Önizleme yaparken userform önde kalıyor

meleklerim

Altın Üye
Katılım
2 Ekim 2013
Mesajlar
335
Excel Vers. ve Dili
ofis 2019 türkçe
windows 10 pro türkçe
Altın Üyelik Bitiş Tarihi
23-07-2025
İyi akşamlar arkadaşlar.
Birçok sayfadan oluşan çalışma kitabımda yazdırmak istediğim sayfa 1 i
Sheets("Sayfa1").PrintPreview
makrosu ile baskı önizleme yaptığımda userform önde önizleme menüsü arkada kalıyor.
Userformda ne gibi ayar yapmalıyım?

Bir de özizlemdene sonra onizleme menüsünden yazdır dediğimde userforma ait bütün excel sayfaları açılıyor.
sadece ilgili sayfa görünür olsun. diğer sayfalar gizlensin

Yardımcı olacak arkadaşlara şimdiden teşekkürler
 

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,128
Excel Vers. ve Dili
Microsoft Office 2019 English
bu kod işinizi çözer.


' UserForm'u gizle
UserForm1.Hide

' Belirli bir aralığın baskı önizlemesini gösterir
Dim rng As Range
Set rng = Range("A1:D10") ' Önizlemesini görmek istediğiniz hücre aralığını buraya girin
rng.PrintPreview

' Print Preview işleminden sonra UserForm'u yeniden başlat
Unload UserForm1
UserForm1.Show
 

meleklerim

Altın Üye
Katılım
2 Ekim 2013
Mesajlar
335
Excel Vers. ve Dili
ofis 2019 türkçe
windows 10 pro türkçe
Altın Üyelik Bitiş Tarihi
23-07-2025
teşekkürler hocam. Ancak ön izleme zaten sadece istediğim sayfayı gösteriyor. Onda sıkıntı yok. Ancak önizlemede iken yazdıra basınca sayfa yazılırken çalışma kitabının tüm sayfaları excelde olarak açılıyor.
 
Katılım
11 Temmuz 2024
Mesajlar
167
Excel Vers. ve Dili
Excel 2021 Türkçe
Merhaba, şöyle deneyip sonucu paylaşabilir misiniz;


Kod:
Private Sub KomutButtonu_Yazdir_Click()
    On Error GoTo ErrorHandler
    Dim ws As Worksheet
    Dim visibleSheets As Collection
    Set visibleSheets = New Collection
    For Each ws In ThisWorkbook.Worksheets
        If ws.Visible = xlSheetVisible Then
            visibleSheets.Add ws.Name
        End If
    Next ws
    Application.ScreenUpdating = False
    For Each ws In ThisWorkbook.Worksheets
        ws.Visible = xlSheetVeryHidden
    Next ws
    Sheets("Sayfa1").Visible = xlSheetVisible
    Sheets("Sayfa1").Select
    Me.Hide
    ActiveSheet.PrintPreview
    Me.Show
    
ErrorHandler:
    For Each ws In ThisWorkbook.Worksheets
        ws.Visible = xlSheetHidden
    Next ws
    For Each sheetName In visibleSheets
        Sheets(sheetName).Visible = xlSheetVisible
    Next sheetName
    Application.ScreenUpdating = True
    If Err.Number <> 0 Then
        MsgBox "Bir hata oluştu: " & Err.Description, vbCritical
    End If
End Sub
 

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,128
Excel Vers. ve Dili
Microsoft Office 2019 English
Birçok sayfadan oluşan çalışma kitabımda yazdırmak istediğim sayfa 1 i
Sheets("Sayfa1").PrintPreview
makrosu ile baskı önizleme yaptığımda userform önde önizleme menüsü arkada kalıyor.
Userformda ne gibi ayar yapmalıyım?

Demiştiniz ben de buna cevap verdim.
 

meleklerim

Altın Üye
Katılım
2 Ekim 2013
Mesajlar
335
Excel Vers. ve Dili
ofis 2019 türkçe
windows 10 pro türkçe
Altın Üyelik Bitiş Tarihi
23-07-2025
Merhaba, şöyle deneyip sonucu paylaşabilir misiniz;


Kod:
Private Sub KomutButtonu_Yazdir_Click()
    On Error GoTo ErrorHandler
    Dim ws As Worksheet
    Dim visibleSheets As Collection
    Set visibleSheets = New Collection
    For Each ws In ThisWorkbook.Worksheets
        If ws.Visible = xlSheetVisible Then
            visibleSheets.Add ws.Name
        End If
    Next ws
    Application.ScreenUpdating = False
    For Each ws In ThisWorkbook.Worksheets
        ws.Visible = xlSheetVeryHidden
    Next ws
    Sheets("Sayfa1").Visible = xlSheetVisible
    Sheets("Sayfa1").Select
    Me.Hide
    ActiveSheet.PrintPreview
    Me.Show
   
ErrorHandler:
    For Each ws In ThisWorkbook.Worksheets
        ws.Visible = xlSheetHidden
    Next ws
    For Each sheetName In visibleSheets
        Sheets(sheetName).Visible = xlSheetVisible
    Next sheetName
    Application.ScreenUpdating = True
    If Err.Number <> 0 Then
        MsgBox "Bir hata oluştu: " & Err.Description, vbCritical
    End If
End Sub
teşekkr ederim, kendi makrolarıma uyarladım çalıştı.
 
Üst