Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
544to548
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
544to548
544to548
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kopieren aus verschiedenen Tabellenblättern

Kopieren aus verschiedenen Tabellenblättern
09.01.2005 21:45:50
Roland
Hallo liebe Excel-Gemeinde,
ich will aus einer Mappe mit 50 Tabellenblättern eine Zusammenfassung
der einzelnen Inhalte (Text + Zahlen) in ein Blatt kopieren.
Wie kann ich erreichen, dass Excel immer das darauffolgende Blatt heranzieht beim Befehl copy down?
Gruß,
Roland
https://www.herber.de/bbs/user/15836.xls
AW: Kopieren aus verschiedenen Tabellenblättern
Beni
Hallo Roland,
dieser Code kopiert die Werte aus den Tabellen in eine.
Gruss Beni

Sub Kopieren_aus_verschiedenen_Tabellenblättern()
For sh = 1 To Sheets.Count
If Sheets(sh).Name <> "Summen" Then
With Sheets("Summen")
lz = Cells(65536, 1).End(xlUp).Row + 1
Cells(lz, 1) = Sheets(sh).Cells(4, 3)
Cells(lz, 2) = Sheets(sh).Cells(4, 4)
End With
End If
Next sh
End Sub

AW: Kopieren aus verschiedenen Tabellenblättern
10.01.2005 08:33:54
Roland
Hallo Beni,
erstmal Danke für den Code.
In der Beispieldatei funktioniert es.
In meiner "eigentlichen" Datei kommt "Index außerhalb der gültigen Bereiches".
Den Code verstehe ich leider nicht, sodaß ich mir nicht selbst helfen kann :-(
Gruß,
Roland
Anzeige
AW: Kopieren aus verschiedenen Tabellenblättern
Beni
Hallo Roland,
möglicherweise entspricht der Tabellenname nicht in der die Daten eingetragen werden nicht dem With Sheets("Summen"), korrigiere diese entsprechend.
Benutze diesen Code, ich habe ein Korrektur gemacht.
Gruss Beni

Sub Kopieren_aus_verschiedenen_Tabellenblättern()
For sh = 1 To Sheets.Count
If Sheets(sh).Name <> "Summen" Then
With Sheets("Summen")
lz = .Cells(65536, 1).End(xlUp).Row + 1
.Cells(lz, 1) = Sheets(sh).Cells(4, 3)
.Cells(lz, 2) = Sheets(sh).Cells(4, 4)
End With
End If
Next sh
End Sub

AW: Kopieren aus verschiedenen Tabellenblättern
10.01.2005 11:19:14
Roland
Hallo Beni,
Du hast Recht, bei mir hieß das Blatt "Bilanz" und nicht "Summen".
Besagte Fehlermeldung bleibt jetzt aus, stattdessen scheint es so, als passiert gar nichts.
Leider muß ich jetzt weg, werde mich heute abend wieder damit befassen.
Vielleicht hast Du noch einen Tipp, wie ich als absoluter VBA-Neuling wenigstens
die rudimentärsten Dinge darüber selbst erlernen kann.
Ich weiß nicht mal, ob ich Deinen Code korrekt in mein Worksheet eingebunden habe.
Gruß,
Roland
Anzeige
AW: Kopieren aus verschiedenen Tabellenblättern
Beni
Hallo Roland,
ich habe Dir den Code entsprechend geändert.
Der untere Teil ist der gleiche Code mit enspechenden Erklärungen.
Gruss Beni

Sub Kopieren_aus_verschiedenen_Tabellenblättern()
For sh = 1 To Sheets.Count
If Sheets(sh).Name <> "Bilanz" Then
With Sheets("Bilanz")
lz = .Cells(65536, 1).End(xlUp).Row + 1
.Cells(lz, 1) = Sheets(sh).Cells(4, 3)
.Cells(lz, 2) = Sheets(sh).Cells(4, 4)
End With
End If
Next sh
End Sub


Sub Kopieren_aus_verschiedenen_Tabellenblättern()
'/// For ist ein Schleife, sie durchläuft alle Sheets, ausser "Bilanz", darum das
'    If Sheets(sh).Name <> "Bilanz"
'/// das sh ist eine Variable und wird von 1 bis Anzahl Sheets hochgezählt, das muss
'    nicht sh sein, es kann auch Roland sein.
For sh = 1 To Sheets.Count
If Sheets(sh).Name <> "Bilanz" Then
'/// With Sheets("Bilanz") alles was innerhalb With und End With ist und einen Punkt
'    vor dem .Cells hat, gehört zu diesem Sheet
With Sheets("Bilanz")
'/// lz ist die letzte Zeile+1 in diesem Sheet
lz = .Cells(65536, 1).End(xlUp).Row + 1
'/// letzte Zeile+1/Spalte1 = den Wert aus dem Sheet mit der Nr. das Excel dem Sheet
'    vergeben hat, Zeile4/Spalte3
.Cells(lz, 1) = Sheets(sh).Cells(4, 3)
.Cells(lz, 2) = Sheets(sh).Cells(4, 4)
End With
End If
Next sh
End Sub

Anzeige
AW: Kopieren aus verschiedenen Tabellenblättern
10.01.2005 19:02:06
Roland
Hi Beni,
erstmal Danke für Deine Mühe.
So langsam blick ich durch bei Deinem Code.
Das versteh ich nicht:
"...den Wert aus dem Sheet mit der Nr. das Excel dem Sheet
' vergeben hat,...
Wenn das heißt, mein Blatt "A" hat eine Nummer hat, wo find ich sie und kann ich sie ändern?
Gruß,
Roland
AW: Kopieren aus verschiedenen Tabellenblättern
Beni
Hallo Roland,
die kanst Du nicht ändern, die Nr. sind fortlaufen wie sie angeordnet sind, wenn z.B. Tabelle1/Tabelle3/Tabelle2 so kommt Tabelle3 vor Tabelle2.
Gruss Beni
AW: Kopieren aus verschiedenen Tabellenblättern
10.01.2005 19:38:04
Roland
Hallo Beni,
Danke, hab ich verstanden.
Soweit bin ich schon fast zufrieden.
Letzte Frage:
Kann ich die Daten aus den Tabellenblättern anstatt in der letzten Zeile
in Zelle B 2 in "Bilanz" und fortlaufend darunter, also B3, B4, B5 usw.
ausgeben lassen?
Gruß,
Roland
Anzeige
AW: Kopieren aus verschiedenen Tabellenblättern
Beni
Hallo Roland,
Gruss Beni

Sub Kopieren_aus_verschiedenen_Tabellenblättern()
For sh = 1 To Sheets.Count
If Sheets(sh).Name <> "Bilanz" Then
With Sheets("Bilanz")
lz = Cells(2, 2).End(xlDown).Row + 1
If Cells(3, 2) = "" Then lz = 3
If Cells(2, 2) = "" Then lz = 2
Cells(lz, 2) = Sheets(sh).Cells(4, 3)
Cells(lz, 3) = Sheets(sh).Cells(4, 4)
End With
End If
Next sh
End Sub

AW: Kopieren aus verschiedenen Tabellenblättern
10.01.2005 23:35:49
Roland
Sehr gut!
Danke für Deine Unterstützung, ich hab viel gelernt.
Vielleicht bis bald mal wieder.
Gruß,
Roland

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige