bin gerade dabei ein Add-in zu schreiben für eine Excel-Datei, die wir regelmäßig bekommen. Diese muss ein wenig aufpoliert werden, damit diese brauchbar ist.
Muss bei mehr als 420 Spalten (größer 89.000 Zeilen) mit Text in Spalten also via TextToColumns umwandeln.
Stoße nun auf ein kleines Problem:
Bei Spalten die leer sind kommt die Fehlermeldung sinngemäß: Kann mit leeren Datensätzen o.ä. nichts anfangen (Laufzeitfehler 1004: Der TextToCollumns-Methode des Range-Objektes konnte nicht ausgeführt werden). Also mache mit CountA (Range) prüfen ob was drin ist, soweit ok.
Hier der Code:
Workbooks(AktWB).Sheets(AktSH).Range(Workbooks(AktWB).Sheets(AktSH).Cells(AusgZeile, i), Workbooks(AktWB).Sheets(AktSH).Cells(L_Row, i)).TextToColumns _
Destination:=Cells(AusgZeile, i), DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
Nun stelle ich fest, dass die leeren Zellen gar nicht leer sind. Vom VBA werden diese aber als leer behandelt = kommt wieder zu der o.g. Meldung
Was tun?
Hab noch via Excel geprüft wie die Inhalte dort interpretiert werden, mit folgendem Ergebnis:
A1:A10 ist leer
Anzahl(A1:A10) =0
Anzahl2(A1:A10) =10
Wenn ich jedoch z.B. in die A2 doppelt klicke und dann Enter, dann wird Anzahl2(A1:A10) =9 angezeigt.
Wie kann man dieses Phänomen* behandeln?
*angeblich leere Zelle als tatsächlich leer zu deklarieren o.ä.
Danke
PS: Es ist kein Hochkomma kein leerer String o.ä. erkennbar. Habe auch via MsgBox mir verschiedenes ausgeben lassen. VBA erkennt nichts.