Methode "Range" für das Objekt'_Global' ist fehlgeschlagen
15.07.2024 13:07:21
DieSara
Ich hab eine Tabelle (kein Bereich) die über eine Userform gefüllt wird.
Die erste Eintragung läuft auch problemlos.
Bei der nächsten Eintragung (Userform wird zwischenzeitlich NICHT geschlossen) erfolgt die Fehlermeldung
Laufzeitfehler '1004': Methode "Range" für das Objekt'_Global' ist fehlgeschlagen.
Wenn ich dann auf "Debuggen" klicke und den Code ausführe funktioniert es, ohne das ich irgendwas gemacht habe.
Kann mir da jemand helfen?
Public Sub Übertrag_click()
Dim Zeile As Range
Dim Lastzeile As Range
Worksheets("Übersicht").Select
Dok_Name = TB_Dok_Name.Text
DOK_ART = CB_Dok_Art.Text
LINK = TB_LINK
Set Zeile = Range("TAB_Übersicht[Dokumente]").Find(What:=Dok_Name, lookat:=xlWhole)
If Not Zeile Is Nothing Then
Msg = MsgBox("Dokument vorhanden. Soll die Ziele überschrieben werden?", vbYesNo)
If Msg = vbNo Then
GoTo ENDE
End If
If Msg = vbYes Then
ZeileNr = Range("TAB_Übersicht[Dokumente]").Find(What:=Dok_Name).Row
'Zeile.Offset(, 1) = CB_Dok_Art.Value
Zeile.Offset(, 2).Select
Zeile.Offset(, 2).Hyperlinks.Add Anchor:=Selection, Address:=TB_LINK.Text, TextToDisplay:="LINK"
If SG = True Then Zeile.Offset(, 3) = "x"
If RF = True Then Zeile.Offset(, 4) = "x"
If BNG = True Then Zeile.Offset(, 5) = "x"
If BOG = True Then Zeile.Offset(, 6) = "x"
If EM = True Then
Zeile.Offset(, 7) = "x"
Zeile.Offset(, 8) = "x"
Zeile.Offset(, 9) = "x"
End If
If IH = True Then Zeile.Offset(, 10) = "x"
If QS = True Then Zeile.Offset(, 11) = "x"
If PP = True Then Zeile.Offset(, 12) = "x"
End If
End If
If Zeile Is Nothing Then
LZ = Range("TAB_Übersicht[Dokumente]").Rows.Count
Set Lastzeile = Range("TAB_Übersicht[[#Headers],[Dokumente]]") --------- HIER WIRD DER FEHLER GEZEIGT
Lastzeile.Offset(LZ, 0) = TB_Dok_Name.Value
Lastzeile.Offset(LZ, 1) = CB_Dok_Art.Value
Lastzeile.Offset(LZ, 2).Select
Lastzeile.Offset(LZ, 2).Hyperlinks.Add Anchor:=Selection, Address:=TB_LINK.Text, TextToDisplay:="LINK"
If SG = True Then Lastzeile.Offset(LZ, 3) = "x"
If RF = True Then Lastzeile.Offset(LZ, 4) = "x"
If BNG = True Then Lastzeile.Offset(LZ, 5) = "x"
If BOG = True Then Lastzeile.Offset(LZ, 6) = "x"
If EM = True Then
Lastzeile.Offset(LZ, 7) = "x"
Lastzeile.Offset(LZ, 8) = "x"
Lastzeile.Offset(LZ, 9) = "x"
End If
If IH = True Then Lastzeile.Offset(LZ, 10) = "x"
If QS = True Then Lastzeile.Offset(LZ, 11) = "x"
If PP = True Then Lastzeile.Offset(LZ, 12) = "x"
Selection.ListObject.ListRows.Add AlwaysInsert:=False
End If
ENDE:
End Sub
Anzeige