Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

wo liegt mein fehler?





Frage

hallo leute... mein problem... ich möchte aus einer access datenbank heraus eine exceltabelle öffnen, ein makro ausführen, die datei dann abspeichern und anschließend wieder schließen. Mein Makro: Dim oXcl As New Excel.Application, ws As Excel.Worksheet Dim i Dim v With oXcl 'öffner die Datei .Workbooks.Open Filename:="D:\Lokale Daten\test111.xls" .Visible = True With Selection 'ermittelt die Anzahl der Datensätze, Abbruchbedingung wenn Zeile (v,1) leer ist, da jeder Datensatz einen Wert in Spalte A haben muss. v = 1 Do v = v + 1 Loop Until Cells(v, 1) = " " For i = 1 To v 'steht überhaupt etwas in der Zelle ? If Cells(i, 1) > 0 Then 'hat die Zelle einen Hyperlink ? If Cells(i, 1).Hyperlinks.Count > 0 Then 'schreibe Hyperlink in Spalte 5 Cells(i, 5) = Cells(i, 1).Hyperlinks(1).Address End If End If End If Next i End With '--------------------------------------------------------------------------------------- .ActiveWorkbook.Save .Quit End With End Sub Mein Makro läuft soweit einwandfrei. Mein einziges Problem. Meine Abbruchbedingung bricht nicht ab :-( Der Zählen läuft immer weiter und weiter obwohl in Spalte A ab Datensatz ca. 200 nichts mehr steht. Da die Anzahl meiner Datensätze aber varriieren kann, muss ich es variable gestalten. Könnt ihr mir sagen wo mein Fehler in meiner Abbruchbedingung liegen kann? Gruß Morpheus

Antwort 1 von erik

Hallo Morpheus,

du scheinst auf das Vorhandensein eines Leerzeichens zu prüfen, das sicherlich nicht in dieser Form in deiner Tabelle vorkommt:

Loop Until Cells(v, 1) = " "


Suche stattdessen nach einer leeren Zeichenfolge "" oder benutze die IsEmpty()-Funktion:

Loop Until Cells(v, 1) = ""


Loop Until IsEmpty(Cells(v, 1)) = True


Gruß
erik

Antwort 2 von morpheus__85

Hallo Erik,

das mit dem "" statt " " weis ich eigentlich, hatte ich zuerst auch funktioniert aber leider auch nicht.
Deine Lösung mit dem IsEmpty is klasse. Hat super funktioniert.
Vielen Danke für die super schneller Hilfe,

Gruß
Morpheus