Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein

Forumthread: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein

Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
29.08.2024 21:51:36
Wiebke15
Hallo,
ich habe eine Arbeitsmappe mit ca. 30 Tabellenblättern. Auf jedem Blatt soll die erste und zweite Spalte (Zahl und Name) erscheinen, sprich immer gleich sein. Nun kann ich natürlich immer auf das erste Blatt verweisen, aber irgendwann wird es schwierig, da man immer hin und herschieben muss. Es geht nicht ums drucken, sondern ich möchte auf jeder Seite Zahl und Namen haben. Gibt es da eine Möglichkeit?
Vielen Dank schon mal!
Anzeige
AW: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
29.08.2024 21:57:49
JoWE
Hallo,
warum machst Du nicht einfach 29 Kopien von der Tabelle 1?
Gruß
Jochen
AW: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
29.08.2024 22:36:00
Yal
Hallo Wiebke,

ich kann mich nicht vorstellen, dass damit die Anforderung vollständig beschrieben ist:
es gibt sicher auf jedem Blatt Daten, die an dem "Zahl und Name" zugeordnet werden/wurden, oder?
was passieren soll, wenn auf das erste Blatt einen Eintrag dazukommt oder entfernt wird?


Es gibt dazu eine Design-Muster, den man mit Power Query (PQ) anwenden kann:
auf die erste Seite ("Master" oder "Parent") wird eine Tabelle definiert (Menü "Einfügen", "Tabelle"). Auch auf jedes Blatt eine Tabelle ("Child").

Jedes Child-Tabelle wird in einer PQ Abfrage eingebunden, gejoint wird mit der Abfrage auf der Parent-Tabelle und das Ergebnis als Tabelle herausgegeben. Dann wird in der Child-Abfrage die ursprüngliche Child-Tabelle durch die Ergebnis-Tabelle ausgetauscht. Es fühlt sich wie einen Zirkelbezug, ist aber nicht. Es sind selbst referierende Abfragen.
Daraus werden die neue Elemente aus der Parent stets in jeden Child verfügbar gemacht, aber auch Löschung in Parent in jeder Child beseitig. Auch die Reihenfolge der Parent kann den "Child" übergeben werden.

Das gesamt sieht so aus: https://www.herber.de/bbs/user/171890.xlsx
einfach rumspielen: im Blatt "Parent" Eintrag hinzufügen, alle Child Abfrage entweder einzel (darauf gehen) mit Alt+F5 oder alle mit Strg+Alt+F5 aktualisieren. Dann in Parent Reihenfolge ändern oder Eintrag entfernen, aktualisieren.

Um PQ kennenzulernen, hier: https://excelhero.de/power-query/power-query-ganz-einfach-erklaert

VG
Yal
Anzeige
AW: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
30.08.2024 07:25:43
Oberschlumpf
Hi,

zeig doch bitte mal per Upload eine Excel-Bsp-Datei mit einigen Tabellenblättern, damit wir sehen können, wie es aussehen soll.

Ciao
Thorsten

P.S. Yal, gelte ich um 725 Uhr noch als Frühaufsteher?^^ :-)
AW: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
30.08.2024 11:12:26
daniel
Hi
vermutlich willst du auch, dass wenn du auf einem Blatt in Spalte A oder B was änderst, sich das in allen Blättern auswirkt.
und dass wenn du in einem Blatt in Spalte A oder B eine Zeile löschst oder einfügst, dass dies dann auch in allen anderen Blättern passiert und dass die daneben liegenden Zellen dann angepasst wird
wird schwierig.
am besten wäre, du packst alles in ein Tabellenblatt, also das, was in den Blättern steht, neben einander mit mindestens einer Leerspalte dazwischen. dann gruppierst du die ganze sache, (Daten - Gliederung - Gruppieren), und zwar so, dass das was früher auf einem Blatt stand , jetzt in einer Gruppe ist.
Die einzelnen Gruppen kannst du dann über Buttons ein und ausblenden, so dass du die Übersicht behälst.

Gruß Daniel
Anzeige
AW: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
30.08.2024 11:34:12
Yal
Hallo Wiebke,

folgende Code macht die Übertragung von einem Startblatt auf alle andere Blätter. In den Blätter wird zuerst der Inhalt der Spalten A:B bereinigt (falls weniger Schüler)
Die Inhalt ab Spalte C gelten dann nicht mehr zu den Einträge in A:B.

Sub Übertragen()

Dim WS As Worksheet

'Bereich A1 bis letzte befüllte Zeile in Spalte B kopieren
With Worksheets("StartBlatt") 'anpassen
.Range(.Range("A1"), .Cells(Rows.Count, "B").End(xlUp)).Copy
'auf jedes Blatt, das nicht Startblatt ist, einfügen
For Each WS In Worksheets
If WS.Name > .Name Then
WS.Range("A:B").ClearContents 'zuerst bereinigen
WS.Range("A1").PasteSpecial 'einfügen
End If
Next
End With
End Sub


um den Code zu verwenden:
- Alt+F11, um Visual Basic zu starten
- Menü "Einfügen", "Modul"
- Code darin einfügen
- Name "Startblatt" im Code anpassen
- Cursor im Code positionieren und F5 drücken (alternativ in Excel zurück und dort Alt+F8 und Makro starten)
Da nur einmal im Jahr, würde ich die Datei ohne Makro speichern. Sonst als "Excel mit Makro" Speichern, aber dann bekommst Du beim jeden Öffnen eine Risiko-Meldung, die Du wegklicken musst.

VG
Anzeige
AW: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
29.08.2024 23:02:39
Wiebke15
Hallo Yal,
vielen Dank für die Antwort. Ich muss da noch ein wenig mit rumspielen, aber auf den ersten Blick sieht es gut aus. Wenn ich allerdings im Parentblatt etwas ändere, sind die Zahlen im Childblatt weg.
Vielleicht noch mal als weitere Erklärung: Ich erstelle Noten mit Excel, das bedeutet, dass die Blätter alle irgendwie miteinander verknüpft sind (viele Tests, die eine Note bilden, Klassenarbeiten etc.). Die erste Seite soll dann die Endnote des Schülers sein und die Namen ändern sich ja nun mal jährlich, die Bewertung als Solche aber nicht.
Liebe Grüße und erstmal schönen Abend noch!
Anzeige
AW: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
30.08.2024 00:48:15
Yal
Hallo Wiebke,

für etwas, was nur einmal im Jahr stattfinden soll, wird die Interaktivität von einem solchen Verfahren nicht nötig.

Ein Makro könnte die Liste vom ersten Blatt schnell auf alle anderen übertragen.

Ich lasse offen. Es gibt morgen sicher Frühaufsteher.

VG
Yal
Anzeige
AW: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
29.08.2024 22:27:29
Wiebke15
Hallo Jochen,
Danke für deine Antwort. Das geht leider nicht, weil alles was danach ist, schon fertig ist, sich aber die ersten beiden Spalten jedes Jahr ändern.
AW: Spalte 1 und 2 sollen auf allen Tabellenblättern gleich sein
30.08.2024 11:48:29
JoWE
Aha, das war mir nicht klar geworden.
Dann versuch mal dieses Makro:
(mach aber zuvor eine Sicherheitskopie Deiner Arbeitsmappe!!!!)

Option Explicit

Sub test()
Dim t As Long
Dim myArr(30) As Variant
For t = 2 To Sheets.Count
myArr(t - 1) = Sheets(t).Name
Next
For t = LBound(myArr) To UBound(myArr)
Sheets("Tabelle1").Columns("A:B").Copy Sheets(t + 2).Range("A1")
Next
End Sub


Gruß
Jochen
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige