Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
336to340
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
336to340
336to340
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Taelle an Monitor anpassen

Taelle an Monitor anpassen
17.11.2003 19:21:23
DieterB
hallo liebe Leute,

folgendes (nicht neues Problem), ich habe eine Excel-datei mit 5 Arbeitsblättern.

Auf 4 Blätter darf (und muss) der User zugreifen.

Ich möchte die benötigten Zellbereiche an die Größe des Monitors anpassen.
Dabei darf die Größe und die Einstellung des Monitors keine Rolle spielen.

Gibt es eine Möglichkeit in VBA um dieses Problem zu lösen?

Danke für die Hilfe.

Gruß

DieterB

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Zoom - Bildschirmauflösung
17.11.2003 21:35:31
ChrisL
Hi Dieter

Gehe davon aus, dass du vom 'Zoom' sprichst.

Range("A1:V43").Select
ActiveWindow.Zoom = True

Weiss leider nicht wie es in diesem Fall ohne Select geht. Das ganze als Worksheet_Activate Ereignis.

Alternative wäre die Bildschirmauflösung zu bestimmen...
http://www.excel-cd.de/mailing/113700h.htm
... und dann mit absoluten Zoom-Werten arbeiten.


Sub GetScreenSize()
Select Case ScreenResolution()
Case "800x600": ActiveWindow.Zoom = 53
Case "1024x768": ActiveWindow.Zoom = 69
'etc.
End Select
End Sub


Siehe auch...
http://www.excel-center.de/forum/read.php?f=1&i=47796&t=47789

Gruss
Chris
Anzeige
AW: Zoom - Bildschirmauflösung
17.11.2003 21:40:43
DieterB
Hallo ChrisL,

danke, ich were es gleich ausprobieren.

Den 1. Teil des Codes(ActiveWindow) ist mir bekannt, hat aber nicht zum gewünschten Ergebniss geführt.

Der 2. Teil klingt gut.

Gibt es auch die Möglichkeit, die Bildschirmauflösung aus dem System
auszulesen, oder muß ich dafür eine Case-Anweisung benutzen.

gruß

DieterB
Das ist nicht korrekt....
17.11.2003 21:56:11
Ramses
Hallo

da fehlt noch ein wenig ;-))

Private Declare

Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Public Enum ScreenArgs
HORIZONTAL
VERTIKAL
End Enum
Public 

Function ScreenResolution(HV As ScreenArgs) As Long
If HV = 0 Or HV = 1 Then ScreenResolution = GetSystemMetrics(HV)
End Function



Sub Set_Zoom()
'Die Werte hinter .Zoom den eigenen Bedürfnissen anpassen
Select Case ScreenResolution(0)
Case 1600
ActiveWindow.Zoom = 75
Case 1280
ActiveWindow.Zoom = 75
Case 1024
ActiveWindow.Zoom = 75
Case 800
ActiveWindow.Zoom = 75
Case 640
ActiveWindow.Zoom = 75
End Select
End Sub


Gruss Rainer
Anzeige
AW: Das ist nicht korrekt....
17.11.2003 22:28:45
DieterB
hallo Rainer,

ja, leider läßt sich der Code, den Chris als Ling beigefügt hat nicht aus-
drucken und ist wohl nicht vollständig.
Aber in deinem Code in "Private Declare ist auch irgendwo ein Fehler,
der mir nicht auffällt.
Jedenfalls ist die Zeile "Function...." rot, es fehlt Bezeichner
oder Anweisungsende.

Gruß

DieterB
Darstellungsfehler
17.11.2003 22:30:54
Ramses
Hallo

das wird nicht richtig dargestellt.

Public und Function

gehört in eine Zeile und sollte so aussehen:

Public Function ScreenResolution....

Gruss Rainer
Noch einer...
17.11.2003 22:33:30
Ramses
Hallo

Private Declare Function GetSystemMetrics....

gehört natürlich auch in eine Zeile :-)

Gruss Rainer
Anzeige
AW: Noch einer...
17.11.2003 22:44:42
DieterB
Hallo Rainer,

so weit so gut.

Jetzt habe ich deinen Code in in mein VBA eingefügt mit 75%, bei allen
Auflösungen.

Die Arbeitsblätter werden aber nach wie vor mit 95% geöffnet.
Was habe ich übersehen? Oder hab ich den Code an der falschen Stelle eingefügt?

Gruß
Dieter
AW: Noch einer...
17.11.2003 22:57:13
DieterB
Hallo Rainer,

danke für Deine Hilfe (auch an Chris).

Ich glaub, ich hab es jetzt.
der Fehler:
Makro wurde nicht ausgeführt(?).

Gruß

DieterB
Workbook.Open
17.11.2003 23:10:24
Ramses
Hallo

schreib im Klassenmodul "Diese Arbeitsmapppe" unter


Private Sub Workbook_Open()
SetZoom
End Sub


Dann wird das ganze beim öffnen der Mappe ausgeführt.

Gruss Rainer
Anzeige
AW: Workbook.Open
17.11.2003 23:33:29
DieterB
Hallo Rainer,

hab ich, hab ich.

Und jetzt funktioniert es mit dem gewünschten Ergebniss.

Ich danke Dir.

Schönen Abend noch

Gruß

DieterB

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige