ich rufe au einer Access Applikation Excel mit Late-Binding (CreateObject...) auf.
Dabei benutze ich die End-Funktion um die letzte Zeile einer Spalte zu ermitteln.
Die Konstante xlUp, die ich dabei benötige habe ich als globale Konstante in
einem Standardmodul hinterlegt(Public Const xlUp = - 4162).
Die folgende Coldezeile liefert mir nur falsche Werte:
xlTabellenende = xlWb.ActiveSheet.Cells(xlWb.ActiveSheet.Rows.Count, colArtNr_Kunde).End(xlUp).Rows
Die End Funktion liefert folgenden Blödsinn:
Befinden sich der gesuchten Spalte nummerische Werte (in meinem Fall eine Artikelnummer), dann gibt die Funktion den nummerischen Wert der letzten Zeile in der Spalte wieder.
Ist in der letzten Zeile der Spalte ein Wert, der als String zu erkennen ist, wird der Variablen xlTabellenende ein String zugewiesen, was logischerweise eine Laufzeitfehler erzeugt, weil ich die Variable xlTabellenende als Long deklariert habe.
Alle Variablen und Konstanten sind deklariert, das Formularmodul wurde mit Opiton Explict debuggt.
Die Maschine liefert keine Fehler beim Debuggen. Was ist an der Funktion falsch?
Ich ärgere mich schon einen halben Tag damit. Wenn nötig übermittle ich den Code der Prozedur bis zur fehlerhaften Zeile, ist aber eine Menge.