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:
- Er verschijnt een invoerscherm waarin je tekst opgeeft die je wilt opmaken, in mijn voorbeeld vet en rood
- De macro loopt alle cellen af binnen het geselecteerde bereik en zoekt naar de opgegeven tekst
- 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
- 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
Excel - Specifieke tekst opmaken
2 bestand(en) 125.58 KB
Vragen?
Heb je vragen over dit specifieke voorbeeld of over Excel in het algemeen? Neem dan contact met mij op!