Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Neue Tabellenblätter automatisch in Formel einbez.

Neue Tabellenblätter automatisch in Formel einbez.
31.05.2005 09:04:20
Matthias
Hallo Leute,
Ich habe eine Excel-Arbeitsmappe mit mehreren Tabellenblättern. Es werden außerdem laufend neue Tabellenblätter mit unterschiedlichenen Bezeichnungen erstellen.
Jetzt will ich ein Tabelleblatt machen, das alle Inhalte aller Tabellenblätter automatisch zusammenfasst und untereinander schreibt! Es sollte natürlich so klappen, das auch immer die Werte von neuen Tabellenblättern automatisch hinzugefügt werden, ohne dass man die Formel verändern muss. Wie mache ich das am besten?
Gibt es für das Problem eine Lösung?
Danke im voraus,
Matthias
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Neue Tabellenblätter automatisch in Formel einbez.
31.05.2005 09:27:25
Hajo_Zi
Hallo Matthias,
Du meinst immer die gleiche Zelle zuasmmenfassen?
In folgender Art.
Gesamtsumme aus Summen über mehrere Tabellen
probiers mal mit
=SUMME(Tabelle1:Tabelle31!E4:F4)
Die Namen "Tabelle1:Tabelle31" musst ‚Du natürlich in Deine Namen ändern!
wobei immer die erste und die letzte Tabelle angegeben werden.
Dabei ist zu beachten, dass zwischen der Tabelle1 und Tabelle 31, kein anderes Tabellenblatt dazwischen liegen darf, welches nicht in die Berechnung mit aufgenommen werden soll. Diese Tabellenblätter sollten dann vor "Tabelle1" oder hinter "Tabelle31" verschoben werden
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem Windows 2000 SP4 und Excel Version 2000 SP3.


Anzeige
AW: Neue Tabellenblätter automatisch in Formel einbez.
31.05.2005 09:44:12
Matthias
Hallo Hajo,
danke für Deine Antwort, aber das ist glaube ich nicht ganz das was ich meine!
Ich habe zum solche Tabellenblätter:
Tabelleblatt-Name: Aktion Häuser
1 Hans Meiser 20.05.2005 30,30€
2 Hubert Müller 30.12.2005 2203,30€
3 Franz Huber 12.23.2005 2393,23€
Tabelleblatt-Name: Aktion Kunststoff
1 Claus Freiwald 31.05.2005 34,23€
2 Stefan Kailer 20.05.2005 283,87€
3 Claudia Lange 01.05.2004 382,38€
Tabelleblatt-Name: Aktion Baustoffe
1 Christian Röhrenbeck 05.06.2005 392,32€
2 Michael Seile 06.06.2005 382,32 €
3 Patrick Bessero 02.02.2005 3923,30 €
In der Excel Arbeitsmappe werden außerdem lauter neue Tabellenblätter erstellt, es gibt also viele neue "Aktionen".
Jetzt will ich ein Tabellenblatt, das alle Werte von allen Tabellenblättern automatisch untereinanderschreibt, so dass ich eine große Tabelle mit allen Werten von allen Tabellenblättern habe, also z.B. so:
Tabelleblatt-Name: Zusammenfassung
1 Hans Meiser 20.05.2005 30,30€
2 Hubert Müller 30.12.2005 2203,30€
3 Franz Huber 12.23.2005 2393,23€
1 Claus Freiwald 31.05.2005 34,23€
2 Stefan Kailer 20.05.2005 283,87€
3 Claudia Lange 01.05.2004 382,38€
1 Christian Röhrenbeck 05.06.2005 392,32€
2 Michael Seile 06.06.2005 382,32 €
3 Patrick Bessero 02.02.2005 3923,30 €
Dieses Tabelleblatt soll automatisch auch immer die Werte von neuen Tabellenblättern miteinbeziehen, welche heute noch nicht erstellt wurden.
Ich hoffe ich habe mich jetzt verständlicher ausdrücken können... ;-)
Viele Grüße und nochmals vielen Dank,
Matthias
Anzeige
AW: Neue Tabellenblätter automatisch in Formel einbez.
31.05.2005 10:17:08
harry
hi,
das blatt "zusammenfassung" an erster stelle in der arbeitsmappe, dann sollte es so klappen:

Sub Zusammenfassung()
a = 1
For i = 2 To ActiveWorkbook.Sheets.Count
For j = 1 To ActiveWorkbook.Sheets(i).Cells(Rows.Count, 1).End(xlUp).Row
ActiveWorkbook.Sheets("Zusammenfassung").Cells(a, 1).Value = _
ActiveWorkbook.Sheets(i).Cells(j, 1).Value
a = a + 1
Next j
Next i
End Sub

liebe grüße,
harry
Anzeige
AW: Neue Tabellenblätter automatisch in Formel einbez.
31.05.2005 12:18:12
Matthias
Danke!
Wo muss ich den Code einfügen?
Viele Grüße,
Matthias
AW: Neue Tabellenblätter automatisch in Formel einbez.
31.05.2005 12:26:55
harry
öffne den vba editor, ein modul hinzufügen und in dieses modul den code hineinkopieren.
AW: Neue Tabellenblätter automatisch in Formel einbez.
31.05.2005 12:38:00
Matthias
O.k. - den Code habe ich erfolgreich einfügen können!
Aber er kopiert aus den Tabellenblättern immer nur die Spalte A, alle anderen Spalten werden nicht kopiert!
Vielen Dank nochmal,
Matthias
Anzeige
AW: Neue Tabellenblätter automatisch in Formel einbez.
31.05.2005 12:55:38
harry
hi,

Sub Zusammenfassung()
a = 1
For i = 2 To ActiveWorkbook.Sheets.Count
For j = 1 To ActiveWorkbook.Sheets(i).Cells(Rows.Count, 1).End(xlUp).Row
ActiveWorkbook.Sheets("Zusammenfassung").Rows(a).Value = _
ActiveWorkbook.Sheets(i).Rows(j).Value
a = a + 1
Next j
Next i
End Sub

ps: fang an, dich mit dem code etwas zu spielen, oder geh mit dem cursor zu codeteilen und drück f1 (=hilfe) und lies nach ....
Anzeige
AW: Neue Tabellenblätter automatisch in Formel einbez.
31.05.2005 13:32:55
Matthias
O.k. - danke!
Ja, ich werde versuchen mich in den Code ein wenig reinzudenken.
Eine Frage noch: Wie schaffe ich es den Code "auf einen Button" zu legen, also dass er immer mit einem Klick auf einen Button gestartet werden kann?
Danke!
Matthias
AW: Neue Tabellenblätter automatisch in Formel einbez.
01.06.2005 08:28:13
Matthias
Und nochmal eine Frage habe ich!
Ich möchte dass er im Tabellenblatt Zusammenfassung erst am Spalte B beginnt. In Spalte A will ich noch ein Formel hinterlegen!
Wie mache ich das?
Ich habe schon selber versucht ein bißchen rumzuprobieren, bin aber auf kein Ergebnis gekommen!
Danke,
Matthias
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Neue Tabellenblätter automatisch in Formel einbeziehen


Schritt-für-Schritt-Anleitung

Um automatisch Werte aus neuen Tabellenblättern in eine Zusammenfassung zu integrieren, kannst Du den folgenden VBA-Code verwenden:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge ein neues Modul hinzu:

    • Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)" und wähle Einfügen > Modul.
  3. Füge den folgenden Code ein:

    Sub Zusammenfassung()
       Dim a As Long
       a = 1
       For i = 2 To ActiveWorkbook.Sheets.Count
           For j = 1 To ActiveWorkbook.Sheets(i).Cells(Rows.Count, 1).End(xlUp).Row
               ActiveWorkbook.Sheets("Zusammenfassung").Rows(a).Value = _
                   ActiveWorkbook.Sheets(i).Rows(j).Value
               a = a + 1
           Next j
       Next i
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus:

    • Drücke ALT + F8, wähle Zusammenfassung aus und klicke auf Ausführen.
  6. Optional: Weisen Sie das Makro einem Button zu:

    • Füge einen Button über Entwicklertools > Einfügen > Button hinzu und verbinde ihn mit dem Makro Zusammenfassung.

Häufige Fehler und Lösungen

  • Problem: Der Code kopiert nur die Spalte A.

    • Lösung: Stelle sicher, dass Du die gesamte Zeile kopierst, wie im oben angegebenen Code.
  • Problem: Das Makro funktioniert nicht, wenn neue Tabellenblätter erstellt werden.

    • Lösung: Stelle sicher, dass das Tabellenblatt "Zusammenfassung" immer an erster Stelle steht, damit es die Daten korrekt aggregieren kann.

Alternative Methoden

Wenn Du keine VBA-Lösungen verwenden möchtest, kannst Du die Daten manuell zusammenfassen oder eine Power Query verwenden, um die Daten zu konsolidieren. Dies erfordert jedoch mehr manuelle Schritte und ist nicht so dynamisch, wie die VBA-Lösung.


Praktische Beispiele

Angenommen, Du hast die folgenden Tabellenblätter:

  • Aktion Häuser
  • Aktion Kunststoff
  • Aktion Baustoffe

Nach dem Ausführen des Makros wird das Tabellenblatt „Zusammenfassung“ automatisch alle Werte aus den genannten Blättern untereinander auflisten, was die Analyse und Berichterstattung erheblich erleichtert.


Tipps für Profis

  • Automatisierung: Um den Prozess noch effizienter zu gestalten, kannst Du das Makro so einstellen, dass es sich bei jedem Öffnen der Arbeitsmappe automatisch ausführt.

  • Datenvalidierung: Verwende Datenvalidierungsfunktionen in Excel, um sicherzustellen, dass alle eingetragenen Daten korrekt und konsistent sind.


FAQ: Häufige Fragen

1. Wo füge ich den VBA-Code ein?
Du musst den VBA-Editor öffnen (ALT + F11), ein Modul hinzufügen und den Code dort einfügen.

2. Kann ich mehrere Spalten in die Zusammenfassung einfügen?
Ja, der bereitgestellte Code kopiert alle Spalten der jeweiligen Zeilen. Stelle sicher, dass der Code korrekt eingefügt wird.

3. Wie kann ich das Makro einfacher ausführen?
Du kannst das Makro einem Button zuweisen, den Du auf dem Arbeitsblatt platzieren kannst, um es mit einem Klick auszuführen.

4. Funktioniert das auch in neueren Excel-Versionen?
Ja, der VBA-Code ist kompatibel mit den meisten Excel-Versionen, darunter Excel 2016, 2019 und Excel 365.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige