vba:
Ich habe eine Schleife, die mir unzählige Exceldokumente ausliest und Werte daraus in eine Zieltabelle schreibt. In der Zieltabelle sollen vom Schleifen-Makro auch Divisionen vorgenommen werden mit den bekommenen Daten. Nun kann es aber auch vorkommen, dass 0-Werte eingetragen werden und infolgedessen kommt es zu Divisionen mit 0, woraufhin das Makro abbricht mit einer Fehlermeldung z.b Überlauf.
jetzt habe ich versucht das ganze so zu lösen, indem ich eine if Funktion eingebaut habe, die den Code des Datensatzes überprüft und bei bedarf, zu einer sprungmarke springt. Sobald dieser Punkt aber nun erreicht wird, springt er danach bei jedem weiteren Schleifendurchlauf nur noch zur Sprungmarke mit dem Ergebnis, dass nur noch die Code Zeile in die Zieltabelle eingetragen wird. In diesem Fall wäre das ActiveWorkbook.Sheets("Arbeiter").Cells(6, 6).
ThisWorkbook.Sheets("Tabelle3").Cells(i, 1) = ActiveWorkbook.Sheets("Arbeiter").Cells(6, 6)
'Bekannte Codes von Datensätzen mit 0-Werten
If ActiveWorkbook.Sheets("Arbeiter").Cells(6, 6).Value = 10920 Or 14378 Then
GoTo sprung
Else
ThisWorkbook.Sheets("Tabelle3").Cells(i, 2) = ActiveWorkbook.Sheets("Arbeiter").Cells( _
_
31, 3)
ThisWorkbook.Sheets("Tabelle3").Cells(i, 3) = ActiveWorkbook.Sheets("Arbeiter").Cells( _
_
31, 4)
ThisWorkbook.Sheets("Tabelle3").Cells(i, 4) = ThisWorkbook.Sheets("Tabelle3").Cells(i, _
_
3) / ThisWorkbook.Sheets("Tabelle3").Cells(i, 2)
.'10 weitere Einträge
End If
sprung:
' Datei schließen, ohne Änderungen zu speichern
ActiveWorkbook.Close savechanges:=False
' neue Datei aus dem Ordner lesen
datei = Dir()
' Ende der Schleife
Loop
Kann mir jemand helfen?