Anzeige
Anzeige
Anzeige
Lesedauer 4 Min.

Excel: automatischer Datenübertrag aus vorherigem Blatt

Es gibt in Excel keine einfache Verweismöglichkeit auf «vorheriges Blatt». Aber wie klappt es trotzdem, z.B. in Spalte B, automatisch die Daten aus Spalte D des «vorherigen» Blatts zu übernehmen?

Das Makro im VisualBasic-Editor

© Quelle: PCtipp.ch

Angenommen, Sie haben 12 oder 52 Tabellenblätter, jeweils eins für jeden Monat oder gar für jede Woche. In Spalte D sind die monatlichen oder wöchentlichen Werte addiert. Die nächsten Blätter wollen Sie nun so vorbereiten, dass in jedem nächsten Blatt in Spalte B die Zahlen aus Spalte D des vorherigen Blattes erscheinen. 

Klingt einfach, ist es aber nicht. Denn ein normaler Verweis im Stile von «='Tabelle1'!D2» würde sich beim Kopieren eines Blattes oder der Zellen nicht anpassen. Er hiesse auch in Tabelle2 bis Tabelle12 immer noch «Tabelle1». Sie müssten den Verweis in allen Formeln manuell korrigieren – und zwar in jedem einzelnen Blatt!

Darum haben wir hier zwei Ansätze; einen mit dem Makro eines unserer Forumsnutzer und einen anderen mit einer Formel (die aber auch ihre Tücken hat).

Das Makro

Öffnen Sie mit Alt+F11 den VisualBasic-Editor. Doppelklicken Sie in der linken Spalte auf Diese Arbeitsmappe und fügen Sie den untenstehenden Quellcode ins Fenster ein. Wichtig hierbei: Passen Sie im letzten Absatz «Range("D2:D5")» auf den Zellbereich an, der kopiert werden soll. Und bei «Range("B2")» geben Sie die Adresse der obersten Zelle an, in welche die kopierten Daten eingefügt werden sollen.

Gehen Sie zu Datei/Schliessen und zurück zu Excel. Speichern Sie die Datei als Dateityp .xlsm, damit Excel das Makro später auch wirklich ausführt.

Sub VorDatenKopieren()

asi = ActiveSheet.Index

nasi = Sheets(asi).Name

If asi = 1 Then

MsgBox "Zu " & nasi & " gibt es keine vorherige Tabelle!", _

48, Environ("UserName")

Exit Sub

End If

asiv = ActiveSheet.Index - 1

nasiv = Sheets(asiv).Name

mgb = MsgBox("Daten werden kopiert von " & nasiv & " nach " & nasi & Chr(13) & _

"Ist das OK?", 36, Environ("UserName"))

If mgb = 7 Then Exit Sub ' 7 = nein

Sheets(asiv).Select

Range("D2:D5").Copy

Sheets(asi).Select

Range("B2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

End Sub

Das Makro im VisualBasic-Editor

© Quelle: PCtipp.ch

Fortan können Sie in einem neuen Tabellenblatt via Entwicklertools das Makro namens VorDatenKopieren starten. Es fragt zurück, ob die Daten vom vorherigen Blatt ins aktuelle Blatt geschrieben werden sollen und überträgt diese vom definierten Zellbereich in den ebenfalls definierten Zielbereich. Dabei schreibt es die Daten übrigens als reine Werte hinein, nicht als Formeln.

Alternative ohne Makro

Man findet im Netz verschiedene Lösungen mit Makro. Wenn es aber auf gar keinen Fall ein Makro sein darf, ginge es zur Not auch mit einer relativ einfachen Formel. Die hat aber ein paar kleinere Haken:

  • Die Namen der Tabellenblätter müssen zwingend mit den Blattnummern übereinstimmen. Das heisst: Das erste Blatt muss exakt den Tabellennamen 01 tragen, das zweite 02 und so weiter.
  • Die Blätter müssen auch in der korrekten Reihenfolge (den Nummern nach aufsteigend) eingeordnet sein. Sie dürfen diese also nicht verschieben, sonst entstehen Zirkelbezüge.

Wenn die Voraussetzungen gegeben sind, können Sie im zweiten Blatt in der ersten Zelle, in der die Daten vom «Vorblatt» übernommen werden müssen, die folgende Formel hineinschreiben; passen Sie nur die beiden Zellbezüge an. Der erste ist die Spaltenangabe (hier Spalte D) in "!D"), der zweite (hier z.B. D2) ist die erste Zelle, aus der Excel die Daten kopieren soll: 

=INDIREKT(TEXT(BLATT()-1;"00")&"!D" & ZEILE(D2))

Kopieren Sie die Zellen herunter. Wenn Sie diese Formeln nun in weitere Blätter (mit korrekt hochnummerierten Namen) kopieren, werden sich die Zellen D2 bis D5 immer den Inhalt aus B2 bis B5 des vorangehenden Tabellenblatts holen. (PCtipp-Forum)

Sind die Tabellennamen 01, 02 etc., geht es auch mit dieser Formel

© Quelle: PCtipp.ch

Kommentare

Cloud Internet Office Internet & Sicherheit
Anzeige
Anzeige

Neueste Beiträge

Die besten PCtipp-Artikel aus der Kalenderwoche 24
In der Kalenderwoche 24 vom 08. bis zum 14. Juni 2026 standen die Artikel «Ubuntu 26.04 LTS ist da!» und «Mini-Cup-Game in der Google-Suche spielen» ganz oben in der Gunst unserer Leserschaft.  
2 Minuten
19. Jun 2026
AI Frontier Hackathon
Neurodiverse IT-Lernende entwickeln bei Microsoft eigene KI-Agenten
Über 40 neurodiverse IT-Lernende und Ausbildner, darunter Lernende im Autismus-Spektrum und mit ADHS, entwickelten beim AI Frontier Hackathon von Kauz Informatik Medien AG und Microsoft Schweiz eigene KI-Agenten.
3 Minuten
21. Jun 2026
Vernehmlassung
Angepasste Unternehmensabgabe für Radio und TV
Der Bundesrat will das Tarifmodell der Unternehmensabgabe für Radio und Fernsehen anpassen und damit einen Entscheid des Bundesgerichts umsetzen. Die Vernehmlassung zur Teilrevision der Radio- und Fernsehverordnung wird am 23. Juni 2026 eröffnet.
2 Minuten
19. Jun 2026

Das könnte Sie auch interessieren

Linux-Praxis
Ubuntu 26.04 LTS ist da!
Die jüngste Langzeitversion von Ubuntu richtet sich sowohl an Einsteiger als auch an Nutzer, die besonderen Wert auf Stabilität legen. Wir erklären, was neu ist und wie Sie das System installieren beziehungsweise ein Upgrade durchführen. 
5 Minuten
12. Jun 2026
Tipps & Tricks
Schweizer Handy-Nummer: So finden Sie sie heraus
Wenn man einen Kollegen oder einen Firmenkontakt sucht und nicht an seine Handy-Nummer herankommt, hilft manchmal ein einfacher Google-Suchtrick.
3 Minuten
29. Jan 2019
Outlook-Tipps
Das neue Outlook
Microsoft hat seine beliebte E-Mail- und Organisations-Software Outlook komplett überarbeitet. Wir zeigen Ihnen Schritt für Schritt, wie Sie die neue Version einrichten, bedienen und optimal auf Ihre Bedürfnisse anpassen.
9 Minuten
10. Apr 2024
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Kommentare