• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

İlk açılışta sayfa görünümlerini ayarlama

Katılım
15 Temmuz 2012
Mesajlar
2,802
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Merhaba.
Aşağıdaki kod ilk açılışta sadece 1. sayfanın görünümünü 100 yapıyor.

Private Sub Workbook_Open()
Sheets(1).select
ActiveWindow.Zoom = 100
End Sub

Ekte gönderdiğim excel dosyamı ilk açtığımda sayfaların görünümünü aşağıdaki gibi ayarlanmasını istiyorum.
Dosyayı farklı arkadaşlar kullanıyor, hep sayfaların görünüm oranları değiştiği için böyle bir şey istiyorum.
Yardımcı olur musunuz?

1.sayfasını Zoom=100
2.sayfasını Zoom=90
3.sayfasını Zoom=60
4.sayfasını Zoom=80
 

Ekli dosyalar

Her sayfanın kod bölümüne bu kodu kendinize uyarlayınız.
Private Sub Worksheet_Activate()
ActiveWindow.Zoom = 90
End Sub
 
Sayın Seyit Bey, ilginiz için çok teşekkür ediyorum, dediğinizi anladım.

Her sayfanın kod bölümüne koymadan Private Sub Workbook_Open() bu başlık altında olmaz mı?
 
Merhaba,

Kod:
Private Sub Workbook_Open()

    Dim zm  As Variant, _
        sh  As Worksheet
    
    zm = Array(0, 100, 90, 60, 80)
    
    Application.ScreenUpdating = False
    
    For Each sh In Sheets
        sh.Select
        ActiveWindow.Zoom = zm(sh.Index)
    Next sh
    
    Sheets(1).Select
    
    Application.ScreenUpdating = True
    
End Sub
 
Sayın Necdet Bey, ellerinize sağlık kod tam istediğim gibi çalışıyor, küçük bir eklenti daha olursa dahada güzel olacak.

Dosyada 4 sayfa varsa kod bu dosyada gayet güzel çalışıyor, dosyada 4'ten fazla dosya olduğunda hata mesajı veriyor.

Örnek olarak,

Sheets(1).ActiveWindow.Zoom = 100
Sheets(3).ActiveWindow.Zoom = 75
Sheets(4).ActiveWindow.Zoom = 90
Sheets(6).ActiveWindow.Zoom = 100

Kod bu şekle çevrilemez mi? Ben bu şekilde yaptığımda hata mesajı veriyor.
 
Merhaba,

zm = Array(0, 100, 90, 60, 80)

bu satıra ekleme yapabilirsiniz.

Ya da kodları aşağıdaki gibi kullanın.

Kod:
Private Sub Workbook_Open()

    Dim zm  As Variant, _
        sh  As Worksheet
    
    zm = Array(0, 100, 90, 60, 80)
    
    Application.ScreenUpdating = False
    
    For Each sh In Sheets
        If Not sh.Index > UBound(zm) Then
            sh.Select
            ActiveWindow.Zoom = zm(sh.Index)
        End If
    Next sh
    
    Sheets(1).Select
    
    Application.ScreenUpdating = True
    
End Sub

İlk 4 sayfayı yapar, sayfa sayısı fazla ise diğer sayfaları ayarlamaz.
 
Sayın Necdet Bey, dediğinizi anladım, ellerinize sağlık çok teşekkür ediyorum.

10 Sayfalı bir dosyada bazı sayfaların görüntülerini ayarlamak istersek nasıl olması gerekir?
 
Sayın Necdet Bey, dediğinizi anladım, ellerinize sağlık çok teşekkür ediyorum.

10 Sayfalı bir dosyada bazı sayfaların görüntülerini ayarlamak istersek nasıl olması gerekir?

zm = Array(0, 100, 90, 60, 80)

satırında ayarlama yapabilirsiniz. Diyelim ki 10 sayfanız varsa görüntüyü değiştirmek istemediklerinize 100 dersiniz olur biter. :)

Yani

zm = Array(0, 100,90,60 , 80, 100, 100, 100, 25, 100, 100)
Böyle tanım yaptığınızda örneğin 8. sayfa 25, 5-6-7-9 ve 10. sayfalar 100 olacaktır.
 
Sayın Necdet Bey, ellerinize sağlık çok teşekkür ediyorum.

Hayırlı günler diliyorum.
 
Geri
Üst