Ich möchte verschiedene Werte (Text) in 3 verschiedenen Bereichen herausfinden. Ich denke, ich habe einen Weg online gefunden, aber es gibt mir einen Fehler.Excel VBA Zählen verschiedene Werte aus mehreren Bereichen
Hier sind die Codes;
Dim MyDict As Object, MyCols As Variant, OutCol As String, LastRowXY_2 As Long
Dim XY_A As Variant, I_XY As Long, MyData_XY As Variant
Set MyDict = CreateObject("Scripting.Dictionary")
MyCols = Array("P", "S", "V")
OutCol = "AN"
For Each XY_A In MyCols
LastRowXY_2 = Worksheets(Ders_Sheet_Adi).Cells(Rows.Count, XY_A).End(xlUp).Row
MyData_XY = Worksheets(Ders_Sheet_Adi).Range(XY_A & "22:" & XY_A & LastRowXY_2).Value
For I_XY = 1 To UBound(MyData_XY)
If MyData_XY(I_XY, 1) <> "" Then MyDict(MyData_XY(I_XY, 1)) = 1
Next I_XY
Next XY_A
Worksheets(Ders_Sheet_Adi).Range(OutCol & "1").Resize(MyDict.Count, 1).Value = WorksheetFunction.Transpose(MyDict.keys)
Beim zweiten Lauf von "XY_A", gibt MyData_XY einen "Type-Mismatch" Fehler.
Ich kann jede Art von Idee verwenden.
Prüfung im Debug-Modus in der zweiten Schleife, was ist der Wert von 'LastRowXY_2' –
Bei der zweiten Schleife Wert von LastRowXY_2 ist„22“ – Bildircin13
so Jetzt debuggen und sehen, was Sie bekommen (im Debug-Modus) für 'MyData_XY' (Empty) –