Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1460to1464
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
Inhaltsverzeichnis

mehrere tabellenblätter zusammenführen

mehrere tabellenblätter zusammenführen
28.11.2015 16:30:50
John
Ich habe eine Mappe,
in dieser werden per Makro die jeweils ersten Blätter kopiert und ein eingefügt!
Auf den Blättern befindet sich jeweils eine Rechnung
David
18.05.2015 Rechnungstext 60,-
20.06.2015 Rechnungstext 80,-
Auf dem nächsten Blatt steht dann in den gleichen Spalten
Bernhard
30.07.2015 Rechnungstext 80,-
01.08.2015 Rechnungstext 80,-
02.08.2015 Rechnungstext 60,-
Nun möchte ich diese ($variable anzahl) Blätter gerne auf einer Liste zusammenführen!
Neues Blatt (Übersicht)
18.05.2015 David Rechnungstext 60,-
20.06.2015 David Rechnungstext 80,-
30.07.2015 Bernhard Rechnungstext 80,-
01.08.2015 Bernhard Rechnungstext 80,-
02.08.2015 Bernhard Rechnungstext 60,-
Mit Indirekt geht es nicht! Da die Werte ja in der gleichen Zeile stehen!?
Datenkonsolidierung anscheind auch nicht, da bei jedem "Aktualisieren" der Mappe ich die Daten neu aufbereiten müsste!?
Hat jemand eine Idee wie man das am besten machen könnte?
Hier mal mein Makro welches ich nicht auf weitere Blätter hinbekomme :(
Sub Makro2()
' Makro2 Makro
Sheets("RE1").Select
Range("Tabelle3").Select
Selection.Copy
Sheets("Gesamt").Select
Range("A1").Select
ActiveSheet.Paste Link:=True
ActiveWindow.SmallScroll Down:=-60
Sheets("Gesamt").Select
ActiveWindow.SmallScroll Down:=-18
Columns("B:B").Select
Application.CutCopyMode = False
Selection.NumberFormat = "[$-F400]h:mm:ss AM/PM"
Columns("D:D").Select
Selection.NumberFormat = "[$-F400]h:mm:ss AM/PM"
Sheets("Gesamt").Select
Columns("E:E").Select
Selection.NumberFormat = "[$-F400]h:mm:ss AM/PM"
Columns("F:F").Select
Selection.NumberFormat = "#,##0.00 _€"
Columns("G:G").Select
Sheets("Gesamt").Select
Columns("H:H").Select
Selection.NumberFormat = "00000"
Columns("G:G").Select
Selection.NumberFormat = "@"
Range("H20").Select
ActiveWindow.SmallScroll Down:=-63
Application.WindowState = xlMinimized
Application.WindowState = xlNormal
End Sub
    Sheets("RE1").Select
RE sind die Blätter und werden Hochgezählt, hier weiss ich aber nicht wie ich dann auf die restlichen zugreifen kann! Der wert der Sheets (RE*) $variiert...
grüsse John

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
mit Beispieldatei geht's einfacher,
28.11.2015 17:48:27
Michael
John,
da müssen wir zum Testen keine Blätter & Daten basteln.
Schöne Grüße,
Michael

AW: mit Beispieldatei geht's einfacher,
29.11.2015 12:16:25
John
Einen schönen Sonntag liebes Forum,
nun habe ich es einigermassen hinbekommen das ich fast sagen kann das ich glücklich verliebt bin in mein Makro...
Wo ich noch scheiter ist das nur Sheets mit dem namen "RE" kopiert werden (also RE1,RE2,RE3... ) da ich in dem Workbook auch Sheets mit anderen namen habe, die werden aber leider alle mitkopiert!
' **********************************************************************
' Kopiert den Range A24:H51 in das Blatt Kilometer
Option Explicit
Public Sub kilometer()
Worksheets("Kilometer").Cells.ClearContents
With Application
.ScreenUpdating = False
.Application.AskToUpdateLinks = False
.EnableEvents = False
.Calculation = xlManual
.DisplayAlerts = False
End With
Dim lRow As Long
Dim sh As Worksheet
Dim shArc As Worksheet
Set shArc = ThisWorkbook.Worksheets("Kilometer")
For Each sh In ThisWorkbook.Worksheets
Select Case sh.Name
Case Is  "Archive"
lRow = shArc.Range("A" & Rows.Count).End(xlUp).Row + 1
sh.Range("A24:H51").Copy
shArc.Range("A" & lRow).PasteSpecial
End Select
Next
Application.CutCopyMode = False
Set shArc = Nothing
Set sh = Nothing
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlAutomatic
.DisplayAlerts = True
.StatusBar = False
Sheets(1).Activate
End With
End Sub
grüsse john

Anzeige
AW: mit Beispieldatei geht's einfacher,
29.11.2015 12:50:26
John
Danke hat sich erledigt!
Grüsse John

ok,
29.11.2015 16:54:25
Michael
Hallo John,
da hatten wir ja nicht viel zu tun - aber schön, wenn alles so läuft, wie Du es Dir vorstellst.
Laß mich noch zwei Sachen zum Programm anmerken:
a) die Blöcke zum Aus- und Einschalten von allem Möglichen zur Geschwindigkeitssteigerung sind ja ganz nett, aber insbesondere das DisplayAlerts würde ich draußen lassen. *Falls* eine (unwahrscheinliche) Meldung kommen sollte, solltest Du sie auch sehen.
b) Select ist langsamer als If, und solange Du nur *einen* Zweig hast, tut es If genauso, also etwa so:
For Each sh In ThisWorkbook.Worksheets
If sh.Name  "Archive" Then
lRow = shArc.Range("A" & Rows.Count).End(xlUp).Row + 1
sh.Range("A24:H51").Copy
shArc.Range("A" & lRow).PasteSpecial
End If
Next
Happy Exceling,
Michael
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige