Excel Scrollbereich beim Öffnen

Hallo,

Also ich wollte in einem Excel Dokument den Scrollbereich ( von A1:open_mouth:37 ) definieren. Nun habe ich im Internet schon mehrere Formeln gefunden aber nichts hilft. Der Scrollbereich soll für jede Tabelle gelten, also nicht nur für eine.

Die Internetcodes funktionierten nicht oder nur wenn ich diese extra Starten lasse.

Wo muss ich jetzt welchen Code hinschreiben, sodass das Makro immer Beim Start direkt ausgeführt wird.

Hallo,

wenn du in Excel den VBA-Editor aufrufst, solltest du über „DieseArbeitsmappe“ mit der rechten Maustaste (Code anzeigen) folgende Funktion einfügen:

Private Sub Workbook_Open()
'…hier der Code, der beim Öffnen ausgeführt werden soll
End Sub

Hab das jetzt nicht geprüft, aber das soltle eigentlich das korrekte Event sein.

Gruss,
Andi

Hier kann ich leider nicht helfen

Hallo,
meine Kenntnisse sind zwar nicht mehr so gut aber vielleicht hilft ein Tipp vom Kollegen:

Erfassen Sie folgendes Ereignismakro, indem Sie zuerst die Tastenkombination ALT + F11 drücken und den Eintrag DIESEARBEITSMAPPE doppelt anklicken.
Private Sub Workbook_Open()
ThisWorkbook.Worksheets(„Tabelle1“).ScrollArea = „$A$1:blush:G$50“
End Sub
Seichern und schließen Sie diese Arbeitsmappe. Beim nächsten Öffnen von Excel können Sie sich nur innerhalb des Bereiches A1:G50 bewegen

Viel Glück.

LG

hab ich leider auch noch nicht gelöst

Du musst den Makrocode in die Arbeitsmappe schreiben, nicht in ein Modul (im linken Fenster Doppelklick auf „Diese Arbeitsmappe“).
Und natürlich mit dem Ereignis

Private Sub Workbook_Open()

Dann wird der Code immer ausgeführt, wenn du diese Mappe öffnest

Hallo,
das mit dem „Scrollbereich“ habe ich nicht verstanden, aber wenn man ein Makro bei Start des Excelfile ausführen will, dann geht man in Visual Basic auf die Microsoft Excel Objekte / Diese Arbeitsmappe und gibt dort unter Workbook/Open die entsprechenen Befehle ein.:
Private Sub Workbook_Open()
End Sub
Möchte man dies pro Tabellenblatt haben, kann man auch pro Tabellenblatt die entsprechenden Makros einpflegen:
Private Sub Worksheet_Activate()
End Sub

Hallo Theroth

Da ich schon länger keine Makros mehr programmiert habe sind meine Kenntnisse etwas eingerostet. Fürchte dass ich dir da nicht weiterhelfen kann, sorry.

Aber ich habe gesehen, dass Du schon einige andere Antworten bekommen hast, hoffe die helfen dir weiter.

LG

Hallo,

Der Code ermittelt die letzte beschriebene Zeile und Spalte, und stellt daraufhin die ScrollArea ein, für jedes Tabellenblatt
VBA-Editor aufrufen
„DieseArbeitsmappe“
Private Sub Workbook_Open()

Dim wks As Worksheet
Dim lRow As Long, lColumn As Long
Dim i As Integer
Dim MaxRow As Integer

For Each ws In ThisWorkbook.Worksheets
With ws
.ScrollArea = „“
MaxRow = 1
lColumn = .UsedRange.SpecialCells(xlCellTypeLastCell).Column
For i = 1 To lColumn
If Not .Columns(i).Hidden Then
lRow = .Cells(Rows.Count, i).End(xlUp).Row
If lRow > MaxRow Then
MaxRow = lRow
End If
End If
Next i
.ScrollArea = Range(.Cells(1, 1), .Cells(MaxRow, lColumn)).Address
End With
Next
End Sub

Gruß
Brandis

Entschuldige, da ist mir ein Fehler unterlaufen:
Dim ws as Worksheet, nicht wks
Brandis

Hey,

hast du schon probiert deine Makros in die sub routine „open“ zu packen? Diese startet automatisch mit dem öffnen des jeweiligen Objektes:
Private Sub Workbook_open()

Beste Grüße
Fesse