Ga naar de inhoud
Home » Excelmeester » Specifieke tekst opmaken

Specifieke tekst opmaken

SPECIFIEKE TEKST OPMAKEN

In een van de Excel groepen (Microsoft Excel voor Financials) op LinkedIn verscheen een vraag over het vet maken van delen van een tekst binnen cellen in Excel. Omdat het om aardig wat cellen ging, zou handmatig vet maken veel tijd kosten. Een macro kan dat veel sneller: tekst opmaken. Onderstaande vba code doet het in een handomdraai!

Selecteer het gebied waarbinnen je wilt zoeken naar een bepaalde combinatie van letters en/of cijfers. Activeer daarna de macro onder de knop “MAAKVET”.

Wat de macro doet is het volgende:

  1. Er verschijnt een invoerscherm waarin je tekst opgeeft die je wilt opmaken, in mijn voorbeeld vet en rood
  2. De macro loopt alle cellen af binnen het geselecteerde bereik en zoekt naar de opgegeven tekst
  3. Wel gevonden? Op de hoeveelste positie binnen de cel begint de tekst (X) die je zoekt en uit hoeveel tekens bestaat de tekst (Y). Maakt de tekens binnen de cel vet en rood van positie X tot en met X+Y
  4. Niet gevonden? Zet de opmaak van de tekst op normaal

Code tekst opmaken in vba

Sub MaakVet()
 Application.ScreenUpdating = False
 Dim txt As String
 Dim first As Integer
 Dim rCell As Range
 Dim rRng As Range
 txt = InputBox("What text do you want to make bold & red?")
 Set rRng = Selection
 For Each rCell In rRng.Cells
 Range(rCell.Address).Select
 first = InStr(ActiveCell.Text, txt)
 ActiveCell.Font.ColorIndex = xlAutomatic
 ActiveCell.Font.Bold = False
 If first <> 0 Then
 ActiveCell.Characters(Start:=first, Length:=Len(txt)).Font.Bold = True
 ActiveCell.Characters(Start:=first, Length:=Len(txt)).Font.Color = -16776961
 End If
 Next rCell
End Sub

Download voorbeeldbestand

Vragen?

Heb je vragen over dit specifieke voorbeeld of over Excel in het algemeen? Neem dan contact met mij op!