String-Suche mit in der Excel-Spalte Werte zeilenweise
Ich habe eine Excel-Tabelle mit 200 Spalten. Jetzt sind es 3500 Zeilen. Ich muss also eine Zeichenfolge suchen, wenn sie in einer Spalte für jede Zeile vorhanden ist. Um den Prozess fett zu machen, suche ich nach einer Alternative anstelle der Looping-Technik. Gibt es solche?
IntRow6 = 2
DataCount = 0
Do While objSheet6.Cells(IntRow6,1).Value <> ""
For DataCount = 0 to UBound(VMHArray)
IntClmn3 = 1
Do While 1 = 1
If objSheet6.Cells(IntRow6,IntClmn3).Value = VMHArray(DataCount) Then
objSheet6.Cells(IntRow6,IntClmn3+2).Value=objSheet6.Cells(IntRow6,IntClmn3+5).Value
Exit Do
End If
IntClmn3 = IntClmn3 + 1
Loop
Next
IntRow6 = IntRow6 + 1
Loop
Das oben genannte nimmt zu viel Zeit in Anspruch, also suche ich nach einem gleichwertigen VBScript-Code, der eine schnellere Suche ausführen kann.
BEARBEITEN:
ParentColmnCount=ParentColmnCount-1
IntRow6=2
DataCount=0
Do While objSheet6.Cells(IntRow6,1).Value <> ""
For DataCount=0 to UBound(VMHArray)
If objSheet6.Range(objSheet6.Cells(IntRow6,1),objSheet6.Cells(IntRow6,ParentColmnCount)).Find(VMHArray(DataCount)) <> Nothing Then
MsgBox("Hi")
End If
Next
IntRow6=IntRow6+1
Loop
Ich erhalte die Fehlermeldung "Objektvariable nicht gesetzt" in der Range-Zeile des obigen Codes.
AKTUALISIEREN
Ich habe meinen Code gemäß Ihrem Vorschlag aktualisiert und die Variablendeklaration wie folgt geändert:
Option explizit
Dim objExcel1, objWorkbook
Dim strPathExcel1
Dim objSheet6, objSheet3
IntRow6, IntRow3 dimmen
Dim IntClmn3
Dim DataCount, ParentColmnCount
Dim Falg
Dim TaskCounter
Dim r As Range Dim s As Variant
Aber ich bekomme wieder den Fehler: Erwartetes Ende der Anweisung "in der Zeile" Dim r As Range "