Hoe de tekstkleur van Excel in te stellen met VBA?

Hoe de tekstkleur van Excel in te stellen met VBA?

In deze zelfstudie leren we hoe u Visual Basic for Applications (VBA) kunt gebruiken om de tekstgrootte en -stijl in een Excel-cel aan te passen op basis van de celinhoud. Deze tutorial is van toepassing op Excel 365, 2021, 2019 en 2016.

voorrondes

Als Excel VBA-ontwikkeling nieuw voor u is, raad ik u aan om, voordat u de tutorial doorloopt, eerst naar onze Excel VBA-macro-primer te kijken.

Voordat u begint met coderen, moet u uw ontwikkelaarstabblad op Excel in het lint inschakelen, omdat u anders geen toegang hebt tot uw Visual Basic Editor.

Wijzig de eigenschappen van uw Excel-celtekst met VBA

Definieer uw spreadsheet

We beginnen met het definiëren van een Excel-spreadsheet die we als voorbeeld zullen gebruiken. Voel je vrij om het te gebruiken om deze tutorial te volgen.

  • Open Microsoft Excel en maak een nieuwe Macro Enabled Excel-werkmap ( .xlsm ) met de naam Excel_Macros.xlsm
  • Sla uw spreadsheet op uw lokale schijf op.
  • Ga je gang in het werkblad Blad1 en voeg de onderstaande tabel toe:

Hoe de tekstkleur van Excel in te stellen met VBA?

  • Klik nu vanuit het lint op Formules .
  • Druk vervolgens op Definieer naam .
  • Definieer een benoemd bereik waarop u uw VBA-code toepast zoals hieronder weergegeven en druk op OK .

Hoe de tekstkleur van Excel in te stellen met VBA?

Gebruik de Cell.Font VBA-eigenschap om de kleur en stijl van het lettertype te wijzigen

  • Ga naar het tabblad Ontwikkelaars .
  • Ga vervolgens door en druk op de Visual Basic - knop.
  • Markeer in de Projectverkenner aan de linkerkant het project Excel_Macros.xlsm en klik vervolgens op Invoegen en kies Module .
  • Er wordt een nieuwe VBA-module met de naam Module1 gemaakt.
  • Ga je gang en plak de volgende code in de nieuw gemaakte module:
Sub Color_Cell_Text_Condition()

Dim MyCell As Range
Dim StatValue As String
Dim StatusRange As Range

Set StatusRange = Range("Completion_Status")

'loop through all cells in the range
For Each MyCell In StatusRange

StatValue = MyCell.Value

'modify the cell text values as needed.
Select Case StatValue

    'green
    Case "Progressing"
    With MyCell.Font
        .Color = RGB(0, 255, 0)
        .Size = 14
        .Bold = True
     End With

    'orange
    Case "Pending Feedback"
    With MyCell.Font
        .Color = RGB(255, 141, 0)
        .Size = 14
        .Bold = True
    End With
    
    'red
    Case "Stuck"
    With MyCell.Font
        .Color = RGB(255, 0, 0)
        .Size = 14
        .Bold = True
    End With

End Select

Next MyCell

End Sub
  • Druk op de knop Opslaan in uw Visual Basic-editor.
  • Druk nu op Uitvoeren en kies vervolgens Sub/UserForm uitvoeren (of druk gewoon op F5).
  • Ga naar je werkblad 1 en merk de wijzigingen op. Aan uw tabelinvoeringen zijn meerdere kleurcodes toegewezen op basis van hun tekst (met behulp van de RGB-kleurfunctie), en we hebben de tekst ook vetgedrukt en vergroot.

Hoe de tekstkleur van Excel in te stellen met VBA?

  • Als u uw code niet hebt opgeslagen, drukt u op de knop Opslaan (of Ctrl+S) en slaat u vervolgens ook uw werkmap op.

Toegang tot uw VBA-macro

  • Merk op dat uw code altijd beschikbaar is om uit te voeren vanaf de opdracht Macro's op het tabblad Weergave (of als alternatief in Ontwikkelaar | Macro's)

Hoe de tekstkleur van Excel in te stellen met VBA?

Bonus: celstijl

Excel biedt de mogelijkheid om celstijlen te maken. Stijlen zijn te vinden in het Home-lint > Stijlen:

Excel vba-lettertypestijlen

Met stijlen kunt u de gewenste celopmaak opslaan. Wijs die stijl vervolgens toe aan een nieuwe cel en alle celopmaak wordt onmiddellijk toegepast. Inclusief lettergrootte, celkleur, celbeveiligingsstatus en al het andere dat beschikbaar is via het Celopmaakmenu:

celopmaakmenu excel

Persoonlijk maak ik voor veel van de modellen waaraan ik werk meestal een ‘Invoer’-celstijl:

Bereik("a1"). Stijl = "Invoer"

Door stijlen te gebruiken, kunt u ook eenvoudig celtypen op uw werkblad identificeren. In het onderstaande voorbeeld worden alle cellen in het werkblad doorlopen en wordt elke cel met Style = "Input" gewijzigd in "InputLocked":

Cel dimmen als bereik

Voor elke cel in ActiveSheet.Cells

Als Cell.Style = "Invoer" dan Cell.Style = "InputLocked"

Stop als

Volgende cel


Gember 2.7.53.0

Gember 2.7.53.0

Ginger is een gratis spelling- en grammaticacontrole.

Blokken

Blokken

Blocks is een intellectueel spel voor leerlingen van de derde klas van de basisschool om hun detectie- en oogvaardigheden te oefenen en wordt door docenten opgenomen in het IT-onderwijsondersteuningsprogramma.

Prezi 6.26

Prezi 6.26

Prezi is een gratis applicatie waarmee u digitale presentaties kunt maken, zowel online als offline.

Mathway

Mathway

Mathway is een zeer nuttige app waarmee u al die wiskundige problemen kunt oplossen waarvoor een complexer hulpmiddel nodig is dan de ingebouwde rekenmachine van uw apparaat.

Adobe Presenter

Adobe Presenter

Adobe Presenter is e-Learning-software uitgegeven door Adobe Systems en beschikbaar op het Microsoft Windows-platform als een Microsoft PowerPoint-plug-in.

Toekan 2.3.0

Toekan 2.3.0

Toucan is een educatief technologieplatform. Hiermee kunt u een nieuwe taal leren terwijl u op gewone, alledaagse websites surft.

ENetViet 24.2

ENetViet 24.2

eNetViet is een applicatie die ouders helpt in contact te komen met de school waar hun kinderen studeren, zodat ze de huidige leersituatie van hun kind duidelijk kunnen begrijpen.

Duolingo

Duolingo

Duolingo - Leer gratis talen, of kortweg Duolingo, is een educatief programma waarmee je veel verschillende talen kunt leren en oefenen.

Snel typen

Snel typen

RapidTyping is een handige en gebruiksvriendelijke tool voor toetsenbordtraining waarmee u uw typsnelheid kunt verbeteren en spelfouten kunt verminderen. Met lessen georganiseerd voor veel verschillende niveaus, leert RapidTyping u hoe u kunt typen of bestaande vaardigheden kunt verbeteren.

MathType 7.4.10.53

MathType 7.4.10.53

MathType is interactieve vergelijkingssoftware van ontwikkelaar Design Science (Dessci), waarmee u wiskundige notaties kunt maken en annoteren voor tekstverwerking, presentaties, eLearning, enz. Deze editor wordt ook gebruikt voor het maken van TeX-, LaTeX- en MathML-documenten.