Hallo zusammen,
ich habe ein Makro geschrieben das einen Eintrag im Tabellenblatt "Komplett" in die nächste freie Zeile der, per Auswahlmenü ausgewählten Werkstatt, kopieren soll. Um das kopieren zu starten soll ein Butoon (ebenfalls ein Makro) angeklickt werden. Als Fehlermeldung erhalte ich "fehlendes Objekt". Anbei der Code für das Makro:
Sub X()
Dim ZeileMax As Long
Dim n As Long
Dim Zeile As Long
With Worksheets("Komplett")
ZeileMax = .UsedRange.Rows.Count
For Zeile = 4 To ZeileMax
If .Cells(Zeile, 4).Value = "Materialschrank" Then
n = Worksheets("Materialschrank").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Materialschrank_1.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Einsatzmaterial" Then
n = Worksheets("Einsatzmaterial").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Einsatzmaterial_2.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Fahrzeuge" Then
n = Worksheets("Fahrzeuge").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Fahrzeuge_3.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Lehrmittel_Zentrale" Then
n = Worksheets("Lehrmittel_Zentrale").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Lehrmittel_Zentrale_4.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Gebäudetechnik" Then
n = Worksheets("Gebäudetechnik").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Gebäudetechnik_5.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Atemschutz" Then
n = Worksheets("Atemschutz").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Atemschutz_6.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Elektro" Then
n = Worksheets("Elektro").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Elektro_7.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Löschgeräte" Then
n = Worksheets("Löschgerät").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Löschgeräte_8.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Rettungsgeräte" Then
n = Worksheets("Rettungsgeräte").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Rettungsgeräte_9.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Hydraulik" Then
n = Worksheets("Hydraulik").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Hydraulik_10.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Kleiderkammer" Then
n = Worksheets("Kleiderkammer").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Kleiderkammer_11.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Medizintechnik" Then
n = Worksheets("Medizintechnik").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Medizintechnik_12.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Kleingeräte" Then
n = Worksheets("Kleingeräte").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Kleingeräte_13.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Pneumatik" Then
n = Worksheets("Pneumatik").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Pneumatik_14.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Funk_EDV" Then
n = Worksheets("Funk_EDV").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Funk_EDV_15.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Absturzsicherung" Then
n = Worksheets("Absturzsicherung").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Absturzsicherung_16.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Beklebung" Then
n = Worksheets("Beklebung").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Beklebung_17.Rows(n)
n = n + 1
ElseIf .Cells(Zeile, 4).Value = "Pumpen" Then
n = Worksheets("Pumpen").Cells(Rows.Count, 1).End(xlUp).Row
.Rows(Zeile).Copy Destination:=Pumpen_18.Rows(n)
n = n + 1
End If
Next Zeile
End With
End Sub
Vielleicht kann mir jemand helfen?
Gruss Sascha
|