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

Anwendung Makro auf alle Tabellenblätter

Forumthread: Anwendung Makro auf alle Tabellenblätter

Anwendung Makro auf alle Tabellenblätter
15.05.2002 12:44:18
Patrick
Hallo,
ich als totaler VBA-Laie habe mir folgendes Makro zusammengezaubert. Das klappt ganz prima.
Jetzt habe ich nur noch das Problem, das dieses Makro auf alle vorhandenen Tabellenblätter (egal, ob 1 oder 256; egal wie bezeichnet) automatisch angewendet werden soll. Momentan wird nur das aktive Tabellenblatt nach dem Makro formatiert.
Ich bin für jede Hilfe dankbar!
Gruß, Patrick

Sub Einrichtung_Seitenlayout()
With ActiveSheet.PageSetup
Dateipfad = ActiveWorkbook.Path & "\&F"
.RightHeader = "&""Arial,Fett""&8&D"
.LeftFooter = "&""Arial,Fett""&8Abteilung, Name (Tel.)"
.CenterFooter = "&""Arial,Fett""&8Page &P of &N"
.RightFooter = "&""Arial,Fett""&8" & Dateipfad
End With
End Sub

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: Anwendung Makro auf alle Tabellenblätter
15.05.2002 12:55:32
Joachim K
Hallo Patrick,
versuchs mal so :
Sub Einrichtung_Seitenlayout()
Dim I As Integer
For I = 1 To Sheets.Count
With ActiveSheet.PageSetup
Dateipfad = ActiveWorkbook.Path & "\&F"
.RightHeader = "&""Arial,Fett""&8&D"
.LeftFooter = "&""Arial,Fett""&8Abteilung, Name (Tel.)"
.CenterFooter = "&""Arial,Fett""&8Page &P of &N"
.RightFooter = "&""Arial,Fett""&8" & Dateipfad
End With
Next I
End Sub

Gruß Joachim

Anzeige
Re: Anwendung Makro auf alle Tabellenblätter
15.05.2002 13:03:22
Patrick
Hmmm... Das funktioniert leider nicht. Bei mir wird da auch nur das aktuelle Blatt formatiert. Wenn ich deine Erweiterungen lese, dann verstehe ich das so, daß das aktuelle Tabellenblatt sooft formatiert wird, wie es Tabellenblätter gibt. Ich möchte ja aber gerade jedes Tabellenblatt formatieren.
Anzeige
Re: Anwendung Makro auf alle Tabellenblätter
15.05.2002 13:23:19
Joachim L.
Hi Patrick,

folgende Zeile ändern.
With ActiveSheet.PageSetup

in
Sheets(I).PageSetup

Gruß Joachim

Re: Anwendung Makro auf alle Tabellenblätter
15.05.2002 13:24:07
Matthias V.
Hallo Patrick,

ich habe den Eintrag von Joachim kopiert und leicht verändert.
Probier das mal aus, vielleicht klappt das hier:

Sub Einrichtung_Seitenlayout()
Dim I As Integer
For I = 1 To Sheets.Count
Worksheets(I).Activate
With ActiveWorkbook.PageSetup
Dateipfad = ActiveWorkbook.Path & "\&F"
.RightHeader = "&""Arial,Fett""&8&D"
.LeftFooter = "&""Arial,Fett""&8Abteilung, Name (Tel.)"
.CenterFooter = "&""Arial,Fett""&8Page &P of &N"
.RightFooter = "&""Arial,Fett""&8" & Dateipfad
End With
Next I
End Sub

Gruß

Matthias V.

Anzeige
Re: Anwendung Makro auf alle Tabellenblätter
15.05.2002 13:33:11
Patrick
Danke!

Super, jetzt klappt es!

Gruß,

Patrick

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Anwendung eines Makros auf alle Tabellenblätter in Excel


Schritt-für-Schritt-Anleitung

Um ein Excel-Makro für alle Tabellenblätter anzuwenden, kannst Du folgendes Vorgehen nutzen. Dieses Beispiel basiert auf dem Thread aus dem Excel-Forum und zeigt, wie Du ein Makro schreibst, das auf alle vorhandenen Tabellenblätter angewendet wird.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code ein:

    Sub Einrichtung_Seitenlayout()
       Dim I As Integer
       Dim Dateipfad As String
    
       For I = 1 To Sheets.Count
           With Sheets(I).PageSetup
               Dateipfad = ActiveWorkbook.Path & "\&F"
               .RightHeader = "&""Arial,Fett""&8&D"
               .LeftFooter = "&""Arial,Fett""&8Abteilung, Name (Tel.)"
               .CenterFooter = "&""Arial,Fett""&8Page &P of &N"
               .RightFooter = "&""Arial,Fett""&8" & Dateipfad
           End With
       Next I
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus, indem Du ALT + F8 drückst, das Makro auswählst und auf Ausführen klickst.

Dieses Makro durchläuft alle Tabellenblätter und wendet die Einstellungen für das Seitenlayout an.


Häufige Fehler und Lösungen

  • Fehler: Das Makro formatiert nur das aktive Tabellenblatt.

    • Lösung: Stelle sicher, dass Du Sheets(I).PageSetup anstelle von ActiveSheet.PageSetup verwendest, um auf jedes Blatt zuzugreifen.
  • Fehler: Der Dateipfad wird nicht korrekt angezeigt.

    • Lösung: Überprüfe, ob der Pfad des Arbeitsbuchs korrekt ist. Verwende ActiveWorkbook.Path, um sicherzustellen, dass der Pfad dynamisch erfasst wird.

Alternative Methoden

Eine alternative Methode, um eine Excel-Formel auf alle Blätter anzuwenden, ist die Verwendung von Excel-Formeln in Kombination mit den 3D-Referenzen. Dies funktioniert besonders gut, wenn Du dieselbe Formel auf mehreren Blättern benötigst.

Beispiel:

=SUMME(Tabelle1:Tabelle3!A1)

Dies summiert die Werte in Zelle A1 von Tabelle1 bis Tabelle3.


Praktische Beispiele

  1. Makro zur Formatierung aller Tabellenblätter: Verwende das oben genannte Makro, um alle Seitenlayouts zu formatieren.

  2. Formel zur Berechnung über alle Blätter: Wenn Du eine Excel-Änderung in allen Tabellenblättern vornehmen möchtest, könntest Du eine Formel einfügen, die sich auf alle Blätter bezieht.


Tipps für Profis

  • Vermeide die Verwendung von ActiveSheet in VBA, um Fehler zu reduzieren.
  • Nutze Option Explicit am Anfang Deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind.
  • Halte Deine Makros modular, indem Du häufig verwendete Funktionen in separate Subroutinen auslagerst.

FAQ: Häufige Fragen

1. Wie wende ich ein Makro auf ein bestimmtes Blatt an?
Du kannst Sheets("Blattname").PageSetup verwenden, um Einstellungen für ein bestimmtes Blatt vorzunehmen.

2. Kann ich mehrere Makros auf alle Tabellenblätter anwenden?
Ja, Du kannst mehrere Makros nacheinander in die Schleife einfügen, die durch die Blätter iteriert.

3. Wie speichere ich mein Arbeitsbuch mit dem Makro?
Speichere Dein Arbeitsbuch im Format xlsm (Excel-Arbeitsmappe mit Makros), um sicherzustellen, dass das Makro gespeichert wird.

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