Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1480to1484
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

Zoom dynamisch anpassen

Zoom dynamisch anpassen
11.03.2016 12:55:03
Lorenz
Hallo Excel-Cracks ;)
Ich versuche mit folgendem Code den Zoom pro Lasche (Tabellenblatt) festzulegen.
Dafür habe ich das Makro hinter eine Form gelegt. Wird auf die Form geklickt funktioniert das auch einwandfrei.
Problem: Sobald ich unten zwischen den Tabellenblättern hin- und herspringe wird der Zoom nicht automatisch umgestellt.
Wie ändere ich meinen Code, damit er jedes mal z.B bei der Lasche "Hauptmenü" den Zoom wie unten stehend anpasst?
Vielen Dank für eure Hilfe!!
Das hier steht noch über dem Code:
Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Const SM_CXSCREEN = 0
Const SM_CYSCREEN = 1
Public wsTemp As Worksheet
Sub OnClick_Übersicht()
Dim intBreit As Integer
Dim intHoch As Integer
Dim strErgebnis As String
intBreit = GetSystemMetrics(SM_CXSCREEN)
intHoch = GetSystemMetrics(SM_CYSCREEN)
strErgebnis = intBreit & "x" & intHoch
Worksheets("HAUPTMENÜ").Select
Range("A1").Select
Select Case strErgebnis
Case "1680x1050"
ActiveWindow.Zoom = 60
Case "1366x768"
ActiveWindow.Zoom = 50
Case "1280x800"
ActiveWindow.Zoom = 50
Case "1024x768"
ActiveWindow.Zoom = 40
Case Else
ActiveWindow.Zoom = 50
End Select
End Sub

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zoom dynamisch anpassen
11.03.2016 13:08:10
Michael
Hallo Lorenz,
im Tabellenblatt "Hauptmenü" folgenden Code eingeben:
Private Sub Worksheet_Activate()
Call OnClick_Übersicht
End Sub
Wenn du jetzt dieses Tabellenblatt anklickst, wird dein Code ausgeführt.
Gruß
Michael

AW: Zoom dynamisch anpassen
11.03.2016 13:30:52
Lorenz
Hi Michael,
Danke für deine schnell Antwort!
Du rufst mit deinem Code ja nur nochmal mein Makro auf.
Da wird sich ja nicht viel ändern wenn ich das richtig sehe?
Gruß
Lorenz

AW: Zoom dynamisch anpassen
11.03.2016 13:58:51
EtoPHG
Hallo Lorenz,
Wenn ich das richtig sehe, hast du genau das angefragt!
Zitat: Wie ändere ich meinen Code, damit er jedes mal z.B bei der Lasche "Hauptmenü" den Zoom wie unten stehend anpasst?
In Excel magst du ein Profi sein, an der Formulierung des Problem scheint es zu hapern.
Gruess Hansueli

Anzeige
AW: Zoom dynamisch anpassen
11.03.2016 14:01:55
Michael
Hallo Lorenz,
da muss ich Hansueli zu 100 Prozent zu stimmen.
Du muss schon deutlich machen, was du erreichen möchtest, dann kann man dir auch (eventuell) helfen.
Gruß
Michael

AW: Zoom dynamisch anpassen
11.03.2016 14:20:05
Lorenz
Da habt ihr mit Sicherheit recht.
Also ich möchte mein Makro so verändern, dass es jedes mal wenn ich auf die Lasche "Hauptmenü" gehe den Zoom automatisch anpasst.
Im Moment kann der oben angefügte Code NUR den Zoom ändern, wenn ich auf eine Form klicke, an die ich das Makro angehängt habe.
Ich möchte aber auch wenn man unten zwischen den Tabellenblättern wechselt den Zoom automatisch aktualisieren lassen.
Hoffe es ist verständlicher ausgedrückt!
Gruß
Lorenz

Anzeige
AW: Zoom dynamisch anpassen
11.03.2016 14:39:11
Michael
Hallo Lorenz,
ehrlich gesagt, ich verstehe dich immer noch nicht so ganz.
Ich habe irgendwie, das Gefühl, dass du den Code gar nicht ausprobiert hast.
Wenn doch, kann ich nicht nach vollziehen, warum du noch eine Form anklicken muss, da doch durch diesen Code der Zoom automatisch eingestellt wird, sobald man auf das Tabellenblatt "Hauptmenü" klickt.
Gruß
Michael

AW: Zoom dynamisch anpassen
11.03.2016 14:42:05
EtoPHG
Hallo Lorenz,
z.B. mit diesem Code in DieserArbeitsmappe:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Select Case Sh.Name
Case "Tabelle1"
ActiveWindow.Zoom = 100
Case "Tabelle2"
ActiveWindow.Zoom = 110
Case "Tabelle3"
ActiveWindow.Zoom = 120
End Select
End Sub
Gruess Hansueli

Anzeige
AW: Zoom dynamisch anpassen
11.03.2016 14:53:52
Michael
Hallo Hansueli,
wenn Lorenz so etwas haben wollte, dann hat er sich aber nicht ganz so geschickt ausgedrückt :-)
Allerdings lese ich aus seinem ersten Eintrag heraus, dass er den Zoom abhängig von der Einstellung des jeweiligen Monitors machen möchte.
Wenn er dieses für jedes Blatt haben möchte, müsste dein Code angepasst werden:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Select Case strErgebnis
Case "1680x1050"
ActiveWindow.Zoom = 60
Case "1366x768"
ActiveWindow.Zoom = 50
Case "1280x800"
ActiveWindow.Zoom = 50
Case "1024x768"
ActiveWindow.Zoom = 40
Case Else
ActiveWindow.Zoom = 50
End Select
End Sub
Hoffe doch, dass wir ihm jetzt helfen konnten
Gruß
Michael
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige