title image


Smiley Re: bestimmen Bereich in der Mitte des Bildschirms gezoomt anzeigen
hallo crisu,



wenn du schon das makro erstellt hast - warum postest du den code dann nicht?



ich bin nach einigem strinrunzeln zu folgender lösung gekommen:



es wäre ziemlich einfach, wenn die zeilen und spalten in der standardhöhe und breite wären. dann könnte man einfach ausprobieren wie das sheet stehen muss und dann über



activewindow.scrollrow = xx bzw. scrollcolumn



das fenster setzen.



leider können zeilen und spalten aber variiert werden. am einfachsten dürfte es sein "von der mitte nach aussen" zu gehen.



hier mein code:





      

Sub ZentriereZelleAufBildschirm()

Dim MitZ As Long, MitSp As Long, Faktor As Long

Dim Geshoe As Integer, GesBr As Integer



MitZ = 38 'die Zeile die in der Mitte des Bildschirms stehen soll

MitSp = 7 'die Spalte die in der Mitte des Bildschirms stehen soll

ActiveWindow.Zoom = 150



    For i = MitZ To 1 Step -1

        'Von der Mitte aus nach oben und unten die Zeilenhöhe addieren

        Geshoe = Geshoe + (Rows(i).Height) / 100 * ActiveWindow.Zoom

        If Geshoe >= ActiveWindow.Height Then 'wenn die Gesamthöhe der Zeilen >= Bildschirmhöhe

            ActiveWindow.ScrollRow = i 'dann Fokus aus aktuelle Zeile setzen und

            Exit For                    'Schleife verlassen

        End If

        Geshoe = Geshoe + (Rows(MitZ - MitZ + i + 1).Height) / 100 * ActiveWindow.Zoom

        If Geshoe >= ActiveWindow.Height Then 'wenn die Gesamthöhe der Zeilen >= Bildschirmhöhe

            ActiveWindow.ScrollRow = i 'dann Fokus aus aktuelle Zeile setzen und

            Exit For                    'Schleife verlassen

        End If



    Next

    x = ActiveWindow.Width

    For i = MitSp To 1 Step -1 'wie vor für die Spalten

        GesBr = GesBr + Columns(i).Width / 100 * ActiveWindow.Zoom

        If GesBr >= ActiveWindow.Width Then

            ActiveWindow.ScrollColumn = i

            Exit For

        End If

        GesBr = GesBr + Columns(MitSp - MitSp + i + 1).Width / 100 * ActiveWindow.Zoom

        If GesBr >= ActiveWindow.Width Then

            ActiveWindow.ScrollColumn = i

            Exit For

        End If

    Next

End Sub 





Code eingefügt mit Syntaxhighlighter 3.0







gruss georg




Beiträge zu Excel 2002 in Verbindung mit Win XP

 A
1Tabellentool
2von StrgAltEntf


Gibts hier


geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: