Dag Experts,
Ik heb een stukje code in VBA wat op zich functioneert (aangeven van verschillen tussen 2 cellen).
Dit is een voorbeeldje:
Dit is wat ik probeer te bereiken:
Van alle ID's vergelijken of de waardes in lijst Controle gelijk zijn aan Lijst Boekingen.
- Speciale leestekens in lijst Boekingen moeten genegeerd worden
- Verschillen in hoofdletters moeten genegeerd worden.
Daarna:
Als waarde in lijst Controle niet gelijk is aan Lijst Boekingen dan de waarde van cel Controle geel kleuren.
Waardes in List A of List B niet aanpassen.
En dit is mijn huidige code:
De stap "cell.offset(0,2).value = temp" zou ik graag "overslaan" zodat er geen data naar het sheet geschreven wordt.
(dan kan "ws.columns(4).delete" uiteraard ook vervallen)
Ik weet zeker dat het mogelijk moet zijn met Arrays maar kom er niet uit. Wie wil/kan me verder helpen?
Het voorbeeldbestand hecht ik aan.
Alvast dank voor jullie hulp!
Groet,
Hela1966
Ik heb een stukje code in VBA wat op zich functioneert (aangeven van verschillen tussen 2 cellen).
Dit is een voorbeeldje:
Dit is wat ik probeer te bereiken:
Van alle ID's vergelijken of de waardes in lijst Controle gelijk zijn aan Lijst Boekingen.
- Speciale leestekens in lijst Boekingen moeten genegeerd worden
- Verschillen in hoofdletters moeten genegeerd worden.
Daarna:
Als waarde in lijst Controle niet gelijk is aan Lijst Boekingen dan de waarde van cel Controle geel kleuren.
Waardes in List A of List B niet aanpassen.
En dit is mijn huidige code:
Code:
Sub Repl_Comp_HighLight()
Const Accent = "àáâãäåçèéêëìíîïðñòóôõöùúûüýÿŠŽšžŸÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖÙÚÛÜÝ'‘’"
Const Normal = "aaaaaaceeeeiiiidnooooouuuuyySZszYAAAAAACEEEEIIIIDNOOOOOUUUUY "
Set ws = Sheet1
Set rng = ws.Range("A2:A10")
ws.Range("C2:C10").Interior.Pattern = xlNone
For Each cell In Range("B2:B10")
tmp = cell.Value
For x = 1 To Len(Accent)
tmp = Replace(tmp, Mid(Accent, x, 1), Mid(Normal, x, 1))
Next
cell.Offset(0, 2).Value = tmp
Next
With ws
For Each cell In .Range(rng.Address)
myComp = StrComp(cell.Offset(0, 3), cell.Offset(0, 2), vbTextCompare)
If myComp <> 0 Then cell.Offset(0, 2).Interior.Color = vbYellow
Next
End With
ws.Columns(4).Delete
End Sub
De stap "cell.offset(0,2).value = temp" zou ik graag "overslaan" zodat er geen data naar het sheet geschreven wordt.
(dan kan "ws.columns(4).delete" uiteraard ook vervallen)
Ik weet zeker dat het mogelijk moet zijn met Arrays maar kom er niet uit. Wie wil/kan me verder helpen?
Het voorbeeldbestand hecht ik aan.
Alvast dank voor jullie hulp!
Groet,
Hela1966