Die kurze Antwort lautet:
Verwenden Sie keine vba, verwenden Sie eine Formel. Insbesondere eine Kombination aus IF
und SUCHEN .
=IF(SEARCH($A1,"Admin")>0,"Exploitation","")
Aber das ist Code-Review, also machen wir das trotzdem.
Regex ist langsam. Es scheint, dass Sie es nur wegen der Unempfindlichkeit gegen Groß- und Kleinschreibung verwenden. Aus diesem Grund können Sie Zellwerte direkt
StrComp
mit dervbTextCompare
Option vergleichen. ( nützlicher Artikel zu StrComp )i
undj
werden typischerweise für Schleifenzähler verwendet, aberrow
undcol
mehr Sinn in diesem Fall machen.
So könnte dies aussehen:
Dim row As Integer
For row = 1 To 10 'let's say there is 10 rows
Dim col As Integer
For col = 1 To 2
If StrComp("Admin",Cells(row, col).Value,vbTextCompare) Then
Cells(row, col + 1).Value = "Exploitation"
End If
Next col
Next row