Anzeige
Archiv - Navigation
1528to1532
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
kopieren und einfügen
06.12.2016 15:32:20
Lisa
Hallo zusammen, ich benötige bitte einmal einen Tipp.
ich möchte die Inhalte mehrerer Tabellen in einer Sammeln.
Dazu habe ich mir gedacht Daten Tabelle für Tabelle zu kopieren und in die Sammler Tabelle einzufügen.
Das ist mein Macro dazu.
Private Sub CommandButton1_Click()
With Sheets("S Artikel").Activate
Range("A1:N" & Cells(Rows.Count, 1).End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy  _
Destination:= _
ThisWorkbook.Sheets("Sammler").Cells(65536, 1).End(xlUp).Offset(1, 0)
End With
With Sheets("B Artikel").Activate
Range("A1:N" & Cells(Rows.Count, 1).End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy  _
Destination:= _
ThisWorkbook.Sheets("Sammler").Cells(65536, 1).End(xlUp).Offset(1, 0)
End With
End Sub

Mein Problem ist nun aber, dass nur die Tabelleninhalte aus der ("S Artikel") kopiert werden, alle anderen aber nicht.
Was mache ich falsch?
Mein CommandButton liegt in der Tabelle ("S Artikel"), von hier aus soll das Macro kopieren.
Wer kann mir bitte helfen?
Liebe Grüße Lisa

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Das Leid mit dem With-Konstrukt...
06.12.2016 15:40:41
Michael
Hallo Lisa!
Wenn Du ein With Konstrukt nutzt, muss innerhalb dessen klargestellt werden, dass sich die verwendeten Bereiche auf das Objekt des aktuellen With-Konstruktes beziehen. Dazu fehlen in Deinem Code Punkte ("."), und dadurch beziehen sich alle Range, Cell-Angaben immer auf das aktive Blatt - in Deinem Fall vermutlich "S Artikel".
D.h. in jedem Deiner Fälle so:
With Sheets("S Artikel").Activate
.Range("A1:N" & .Cells(.Rows.Count, 1).End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy  _
Destination:= _
ThisWorkbook.Sheets("Sammler").Cells(65536, 1).End(xlUp).Offset(1, 0)
End With
Beachte den "." vor Range und Cells und Rows.Count...
LG
Michael
Anzeige
Und das .Activate kann auch weg...
06.12.2016 15:42:24
Michael
Lisa,
...d.h. in Deinem Fall:
With Sheets("S Artikel")
.Range("A1:N" & .Cells(.Rows.Count, 1).End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy  _
Destination:= _
ThisWorkbook.Sheets("Sammler").Cells(65536, 1).End(xlUp).Offset(1, 0)
End With
etc.
LG
Michael
AW: Das Leid mit dem With-Konstrukt...
06.12.2016 15:44:10
Lisa
Hallo Michael,
...oh nein, daran lag es?
vielen, vielen Dank!
Liebe Grüße Lisa
Ja, kleiner Punkt, große Wirkung ;-) - owT
06.12.2016 15:50:06
Michael

346 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige