Microsoft Excel

Herbers Excel/VBA-Archiv

Wieso geht das nicht ?

Betrifft: Wieso geht das nicht ? von: Dennis
Geschrieben am: 14.11.2012 21:45:40

Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

With Worksheets("Eingang")
.Rows(Target.Row).Copy _
Worksheets("Bestand").Rows(Worksheets("Bestand").Cells(Rows.Count, 1).End(xlUp).Row + 1)

.Rows(Target.Row).Delete Shift:=xlUp

End With


End Sub

Hallo,

obiges Makro funktioniert, unteres nicht. Kann mir jemand sagen was ich falsch mache.? Ich möchte kein Ereignis haben sondern auf einen Knopf drücken um die ausgewählte Zeile in das andere Tabellenblatt zu kopieren. Leider Kommt dann immer Fehler 424 Objekt erforderlich
Sub Eingang_buchen()

With Worksheets("Eingang")
.Rows(Target.Row).Copy _
Worksheets("Bestand").Rows(Worksheets("Bestand").Cells(Rows.Count, 1).End(xlUp).Row + 1)

.Rows(Target.Row).Delete Shift:=xlUp

End With


End Sub

  

Betrifft: AW: Wieso geht das nicht ? von: Uduuh
Geschrieben am: 14.11.2012 22:02:31

Hallo,
Target ist Nothing!

Sub Eingang_buchen()
  Dim Target as Range
  Set Target=ActiveCell
  With Worksheets("Bestand")
    Target.EntireRow.Copy _
    .Rows(.Cells(Rows.Count, 1).End(xlUp).Row + 1)
    Target.EntireRow.Delete Shift:=xlUp
  End With
End Sub
Gruß aus’m Pott
Udo



  

Betrifft: AW: Wieso geht das nicht ? von: Dennis
Geschrieben am: 14.11.2012 22:18:40

mhh. Danke für dein antwort, aber das geht ebenso nicht.

Activecell liefert den Zellinhalt. Ich glaube das ich das aber nicht brauche


  

Betrifft: AW: Wieso geht das nicht ? von: Uduuh
Geschrieben am: 14.11.2012 22:30:02

Hallo,
Activecell liefert den Zellinhalt.
Kommt drauf an, wie man es anwendet.

X=Activecell :der Inhalt
Set X =ActiveCell : Die Zelle als Objekt

Gruß aus’m Pott
Udo



  

Betrifft: AW: Wieso geht das nicht ? von: hary
Geschrieben am: 15.11.2012 09:08:20

Hallo Dennis

Sub Eingang_buchen()
With Worksheets("Eingang")
  .Rows(ActiveCell.Row).Copy _
    Worksheets("Bestand").Rows(Worksheets("Bestand").Cells(Rows.Count, 1).End(xlUp).Row + 1)
   .Rows(ActiveCell.Row).Delete Shift:=xlUp
End With
End Sub

gruss hary