online 1
gast (50)

/ Forum / Datenbanken

DatenbankenDatenbanken

Fragevon morpheus__85 vom 31.07.2019, 08:15 Options

wo liegt mein fehler?

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 schreiben

Antwort 1 von erik vom 31.07.2019, 08:28 Options

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 vom 31.07.2019, 08:38 Options

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

Ähnliche Themen

Fehler Meldung
RalfH  10.01.2007 - 77 Hits - 1 Antwort

bei E-Mail ausgang kommt: Fehler 554 Nr. 0x800CCC79
spot  27.01.2007 - 464 Hits - 1 Antwort

Nach Browseröffnung,wird Internet unterbrochen
Mel123  23.02.2007 - 118 Hits -

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026