HERBERS Excel-Forum - das Archiv

Thema: Fensterfixierung mit VBA | Herbers Excel-Forum

Fensterfixierung mit VBA
Peter


Guten Abend
Ich habe in einer Datei eine Menge Tabellen, bei denen ich die Fensterfixierung einstellen will.
Fixiert sein sollen die Spalten A bis K (= Spalten 1-11) sowie Zeile 1.
Da einzelne Tabellen möglicherweise eine andere Fensterfixierung aufweisen, stelle ich diese zerst zurück (vielleicht nicht nötig?).
Was ist an untenstehendem Code falsch? Nach dem Druchlaufen gibt es z.B. Tabellen, bei denen Zeile 17 fixiert ist (Zeile 1-16 sind nicht ersichtlich) oder bei den Spalten sind z.B. 11 Spalten ab M fixiert.
Danke für eine Antwort.
Gruss, Peter
Sub Fix()
Dim aa As String
Sheets("0100").Activate
Do While aa <> "1231"
'Application.ScreenUpdating = False
Application.StatusBar = "Fensterfixierung auf Blatt " & ActiveSheet.Name
With ActiveWindow
.SplitColumn = 0
.SplitRow = 0
End With
With ActiveWindow
.SplitColumn = 11
.SplitRow = 1
.FreezePanes = True
End With
With ActiveSheet
.Next.Select
End With
aa = ActiveSheet.Name
Loop
Application.StatusBar = ""
'Application.ScreenUpdating = True
End Sub

AW: Fensterfixierung mit VBA
Petra

Hi Peter
setze dies noch an den Anfang:
With ActiveWindow
.SplitColumn = 0
.SplitRow = 0
.ScrollRow = 1
.ScrollColumn = 1

End With
Grüße Petra
.FreezePanes=False owT
Rudi

AW: Fensterfixierung mit VBA
Peter

Hallo zusammen
Danke für die Hinweise.
Ich habe festgestellt, dass noch folgende Codezeilen notwendig sind:
With ActiveSheet
Application.Goto .Cells(1, 1)
End With
Ansonsten hilft auch Scroll nicht.
Gruss, Peter
Sub Ffix()
Dim aa As String
Sheets("0100").Activate
Do While aa <> "1231"
Application.StatusBar = "Fensterfixierung auf Blatt " & ActiveSheet.Name
With ActiveWindow
.FreezePanes = False
End With
With ActiveSheet
Application.Goto .Cells(1, 1)
End With
With ActiveWindow
.SplitColumn = 11
.SplitRow = 1
.FreezePanes = True
End With
With ActiveSheet
.Next.Select
End With
aa = ActiveSheet.Name
Loop
Application.StatusBar = ""
End Sub