Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Alle Tabellen gleiche Schriftart vor dem speichern

Forumthread: Alle Tabellen gleiche Schriftart vor dem speichern

Alle Tabellen gleiche Schriftart vor dem speichern
06.04.2016 23:14:22
Martina
Hallo Ihr Experten,
möchte gern - immer wenn auf speichern gedrückt wird:
1.) alle Tabellen im Blatt auswählen und
2.) allen Blättern die Schriftart Calibri und -Größe 11 zuweisen.
3.) alle gesetzten Filter sollen auf alle anzeigen gesetzt werden (also keine DS mehr gefiltert sein.
4.) WICHTIG: zum Schluß soll keine Tabelle mehr markiert sein (sind sie bei mir aber immer noch)
(Ich habe das unten stehende Makro etwas "zusammengeschustert", funktioniert nicht richtig!!!)
Auf diesem Weg möchte ich verhindern, dass die Anwender mir da alle möglichen Schriftarten reinsetzen, wenn sie Daten eingeben oder reinkopieren.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim wksBlatt As Worksheet
For Each wksBlatt In ThisWorkbook.Worksheets
Cells.Select
With Selection.Font
.Name = "Calibri"
.Size = 11
End With
If wksBlatt.FilterMode Then wksBlatt.ShowAllData
Next wksBlatt
End Sub
Danke für Eure Hilfe!!

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Alle Tabellen gleiche Schriftart vor dem speichern
07.04.2016 09:17:51
Steve
Hallo Martina,
drei Sachen:
1.
"Cells" (oder auch Range) bezieht sich ohne Angabe des Tabellenblattes immer auf das aktive Sheet, auch hier wksBlatt davor schreiben.
2.
Select und Selection können zusammengefasst werden. Diese Befehle sind unnütz und entstehen nur durch den Rekorder der ja dein Markieren aufzeichnet.
3.
"If wksBlatt.FilterMode Then wksBlatt.ShowAllData"
Du prüfst nicht ob dein Blatt überhaupt einen Filter enthält, das kann uU. zu einem Fehler führen.
Ansonsten sah das von der Struktur her schon super aus.
lg Steve
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim wksBlatt As Worksheet
For Each wksBlatt In ThisWorkbook.Worksheets
With wksBlatt.Cells.Font
.Name = "Calibri"
.Size = 11
End With
If wksBlatt.AutoFilterMode Then If wksBlatt.FilterMode Then wksBlatt.ShowAllData
Next wksBlatt
End Sub

Anzeige
AW: Alle Tabellen gleiche Schriftart vor dem speichern
07.04.2016 10:41:30
Martina
Hallo Steve,
herzlichen Dank für die tolle Antwort und dann noch mit einem Lob, wo man als Anfänger doch eher ziemlich frustriert sein kann.
SUPER, vielen Dank!
LG Martina
;
Anzeige
Anzeige

Infobox / Tutorial

Alle Tabellen gleiche Schriftart vor dem Speichern ändern


Schritt-für-Schritt-Anleitung

Um die Schriftart für alle Tabellenblätter in Excel vor dem Speichern zu ändern, kannst Du das folgende VBA-Makro verwenden. Dieses Makro sorgt dafür, dass die Schriftart auf Calibri und die Größe auf 11 gesetzt wird. Außerdem werden alle Filter zurückgesetzt, sodass keine Daten mehr gefiltert sind.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Wähle im Projektfenster das entsprechende Workbook aus.
  3. Klicke mit der rechten Maustaste auf "DieseArbeitsmappe" und wähle "Code anzeigen".
  4. Füge das folgende Makro ein:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Dim wksBlatt As Worksheet
    For Each wksBlatt In ThisWorkbook.Worksheets
        With wksBlatt.Cells.Font
            .Name = "Calibri"
            .Size = 11
        End With
        If wksBlatt.AutoFilterMode Then If wksBlatt.FilterMode Then wksBlatt.ShowAllData
    Next wksBlatt
End Sub
  1. Schließe den VBA-Editor und speichere Deine Arbeitsmappe als Makro-enabled Workbook (*.xlsm).
  2. Teste das Makro, indem Du die Datei speicherst. Alle Tabellenblätter sollten nun die Schriftart geändert haben.

Häufige Fehler und Lösungen

  • Fehler: Schriftart wird nicht geändert

    • Stelle sicher, dass Du das Makro in "DieseArbeitsmappe" eingefügt hast und die Arbeitsmappe als *.xlsm gespeichert ist.
  • Fehler: Filter werden nicht zurückgesetzt

    • Überprüfe, ob Du die Bedingung If wksBlatt.AutoFilterMode korrekt implementiert hast.
  • Fehler: Makro läuft nicht

    • Stelle sicher, dass Makros in Deinen Excel-Einstellungen aktiviert sind.

Alternative Methoden

Falls Du kein VBA verwenden möchtest, kannst Du die Schriftart auch manuell ändern:

  1. Wähle alle Blätter aus, indem Du die STRG-Taste gedrückt hältst und auf die Blätter klickst.
  2. Ändere die Schriftart unter dem Tab "Start" in der Gruppe "Schriftart".
  3. Um alle Filter zurückzusetzen, gehe zu "Daten" und klicke auf "Filter löschen".

Diese Methode ist jedoch weniger automatisiert und erfordert mehr manuelle Schritte.


Praktische Beispiele

Wenn Du das Makro ausführst, wirst Du feststellen, dass es in einer Arbeitsmappe mit mehreren Tabellenblättern automatisch die Schriftart für alle Tabellenblätter ändert. Dies ist besonders nützlich in großen Projekten, wo Konsistenz in der Formatierung wichtig ist.

Ein Beispiel für das Ergebnis könnte so aussehen:

  • Alle Tabellenblätter zeigen nun die Schriftart Calibri in der Größe 11.
  • Alle Daten sind sichtbar, da die Filter zurückgesetzt wurden.

Tipps für Profis

  • Nutze das Makro regelmäßig, insbesondere wenn Du oft Daten importierst oder kopierst, um sicherzustellen, dass die Formatierung einheitlich bleibt.
  • Erwäge, das Makro in eine personalisierte Arbeitsmappe zu speichern, um es in verschiedenen Projekten wiederverwenden zu können.
  • Teste das Makro in einer Kopie Deiner Arbeitsmappe, um sicherzustellen, dass alles wie gewünscht funktioniert, ohne Deine Originaldaten zu gefährden.

FAQ: Häufige Fragen

1. Wie kann ich das Makro anpassen, um eine andere Schriftart zu verwenden?
Ändere einfach die Zeilen .Name = "Calibri" in die gewünschte Schriftart, z.B. .Name = "Arial".

2. Funktioniert das Makro in allen Excel-Versionen?
Das Makro ist für Excel 2010 und neuere Versionen geeignet. Ältere Versionen unterstützen möglicherweise nicht alle Funktionen.

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