Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1816to1820
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Alle Arbeitsblätter Autofit/Fixiert

Alle Arbeitsblätter Autofit/Fixiert
14.03.2021 12:28:45
Jubeldibub
Hallo zusammen,
ich habe eine Excelmappe mit ca. 500 Tabellenblättern und wollte für alle diese Blätter nun ein Makro schreiben, mit dem folgendes abgewickelt wird:
- Alle Blätter erhalten einen Filter in Zeile 3
- Alle Blätter bekommen eine Fensterfixierung in A4 (also die oberen drei Zeilen sind fixiert)
- Alle Spalten bekommen einen Autofit verpasst
Ich habe es mit diesem Code probiert:
Public Sub Tabelle_vorbereiten()
Dim ws As Worksheet
'Filter lösen
For Each ws In ActiveWorkbook.Worksheets
'Autofilter setzen
ws.Activate
ws.Rows("3:3").Select
ws.Selection.AutoFilter
'Fixierung setzen
ws.Range("A4").Select
ws.ActiveWindow.FreezePanes = True
'Autofit aller Spalten
ws.Columns("A:ZZ").Select
ws.Columns("A:ZZ").EntireColumn.AutoFit
Next ws
End Sub
Leider funktioniert davon nur der Teil "Autofit aller Spalten", bei den anderen Beiden bekomme ich die Meldung "Methode oder Datenobjekt nicht gefunden". Was mache ich falsch? Könnt ihr mir helfen?

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

Betreff
Datum
Anwender
Anzeige
AW: Alle Arbeitsblätter Autofit/Fixiert
14.03.2021 12:56:48
ralf_b
du mußt nicht vorher selectieren. Die Bereiche kann man auch direkt bearbeiten.
ein worksheet hat kein activewindow. Es gibt aber application.Activewindow

AW: kleiner Zusatz
14.03.2021 13:02:57
ralf_b
zum FreezePanes kannst du dich vom Worksheet auch "hocharbeiten".
ws.Parent.Parent.ActiveWindow.FreezePanes

AW: Alle Arbeitsblätter Autofit/Fixiert
14.03.2021 13:46:42
Jubeldibub
Hallo Ralf,
das verstehe ich leider noch nicht wirklich. Ich habe jetzt mal die Selection-Passagen herausgenommen:
Public Sub Tabelle_vorbereiten()
Dim ws As Worksheet
'Filter lösen
For Each ws In ActiveWorkbook.Worksheets
'Autofilter setzen
ws.Activate
ws.Rows("3:3").Select
ws.AutoFilter
'Fixierung setzen
ws.Range("A4").Select
ws.FreezePanes = True
'Autofit aller Spalten
ws.Columns("A:ZZ").Select
ws.Columns("A:ZZ").EntireColumn.AutoFit
Next ws
End Sub
Nun bekomme ich die Meldung "Unzulässige Verwendung einer Eigenschaft" bei "ws.Autofilter".

Anzeige
AW: Alle Arbeitsblätter Autofit/Fixiert
14.03.2021 15:16:54
ralf_b
leider läßt sich das activate des Worksheet für freezepanes nicht umgehen.
ich hoffe das funktioniert so.
Public Sub Tabelle_vorbereiten()
Dim ws As Worksheet
application.screenupdating = false
'Filter lösen
For Each ws In ActiveWorkbook.Worksheets
ws.activate
'Autofilter setzen
ws.Rows("3:3").AutoFilter
'Fixierung setzen
ws.Range("A4").Select
ActiveWindow.FreezePanes = True
'Autofit aller Spalten
ws.Columns("A:ZZ").EntireColumn.AutoFit
Next ws
application.screenupdating = true
End Sub


AW: Alle Arbeitsblätter Autofit/Fixiert
15.03.2021 04:48:57
Jubeldibub
Hi Ralf,
das klappt einwandfrei! Vielen Dank!
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige