SjofaaSj
Gebruiker
- Lid geworden
- 24 feb 2014
- Berichten
- 44
Ik heb een tabel met codes en een bereik waar deze codes worden ingevuld.
In de tabel heeft elke code een kleur en ik wil deze ook in de tabel weergeven
Ik wil geen voorwaardelijke opmaak gebruiken maar dit via VBA oplossen
Het lukt deels met deze code
De code crasht echter als de waarde een punt is (staat nochtans in de tabel) en cijfers worden niet geformatteerd.
Is dit de meest efficiënte manier om de kleur op te halen en hoe kan ik cijfers en tekens eveneens laten meekleuren?
Alvast bedankt.
In de tabel heeft elke code een kleur en ik wil deze ook in de tabel weergeven
Ik wil geen voorwaardelijke opmaak gebruiken maar dit via VBA oplossen
Het lukt deels met deze code
Code:
Sub UpdateColors()
Dim rng As Range, cell As Range
Dim myTbl As ListObject, ColHdr As String, TblCol As Long, TblRow As Long
Dim LookupVal As Variant
Dim myCell As Variant
'PRM
Set myTbl = Sheets("kleuren").ListObjects("T_kleuren")
Set rng = Range("rngInput")
ColHdr = "CODE"
TblCol = Application.WorksheetFunction.Match(ColHdr, myTbl.HeaderRowRange, 0)
'GO
For Each cell In rng
myCell = cell.Value
myadr = cell.Address
TblRow = Application.WorksheetFunction.Index(myTbl.ListColumns(TblCol).DataBodyRange, Application.WorksheetFunction.Match(myCell, myTbl.ListColumns(1).DataBodyRange)).Row
cell.Interior.ColorIndex = myTbl.DataBodyRange.Cells(TblRow, TblCol).Interior.ColorIndex
Next cell
End Sub
De code crasht echter als de waarde een punt is (staat nochtans in de tabel) en cijfers worden niet geformatteerd.
Is dit de meest efficiënte manier om de kleur op te halen en hoe kan ik cijfers en tekens eveneens laten meekleuren?
Alvast bedankt.