Bu yazımızda farklı sayfalardan veri yazdırmak için bir makro oluşturacağız.
İki sayfada farklı ham verilerimiz var ve bu sayfalardan çıktıları özelleştirmek istiyoruz.
Makroyu çalıştırmadan önce, gerekli çıktı türünü ve adı, aralığı veya özel görünümü belirtmemiz gerekir.
Özel bir görünüm “customView1” oluşturduk.
Mantıksal açıklama
Kişiye özel baskı için “PrintReports” makrosu oluşturduk. Bu makro, A13 hücresinden başlayarak son satıra kadar döngü yapacaktır. Kişiye özel baskı için üç farklı tip belirleyebiliriz.
Tip 1 için, bir sonraki sütunda sayfa adını belirtmemiz gerekiyor.
Tip 2 için çıktısını almak istediğimiz aralığı belirtmemiz gerekiyor.
Tip 3 için özel görünümün adını belirtmemiz gerekiyor.
Kod açıklaması
Aralıktaki Her Hücre1 İçin("A13", ActiveCell.End(xlDown))
Yukarıdaki kod, A13 hücresinden başlayarak son satıra kadar döngü yapmak için kullanılır.
DefinedName = ActiveCell.Offset(0, 1).Value
Yukarıdaki kod, aktif hücreden bir sonraki sütundaki hücreden değeri almak için kullanılır.
Case Cell1.Value seçin
Dava 1
'Tanımlanmış sayfanın seçilmesi
E-Tablolar(DefinedName).Seçin
2. durum
'Tanımlanmış aralığın seçilmesi
Application.Goto Reference:=DefinedName
Durum 3
'Tanımlanmış özel görünümün seçilmesi
ActiveWorkbook.CustomViews(DefinedName).Göster
Seçimi Bitir
Yukarıdaki Select ifadesi, kullanıcı tarafından tanımlanan tipe göre belirtilen alanı seçmek için kullanılır.
ActiveWindow.SelectedSheets.PrintOut
Yukarıdaki kod, seçilen alanı yazdırmak için kullanılır.
Lütfen kod için aşağıdan takip edin
Seçenek Explicit Sub PrintReports() 'Bildirilen değişkenler Dim DefinedName As String Dim Cell1 As Range 'Ekran güncellemelerini devre dışı bırakma Application.ScreenUpdating = False 'Bütün hücrelerde dolaşma Aralıktaki Her Hücre1 İçin("A13", ActiveCell.End(xlDown)) Sayfalar ("Ana"). 'Hücreyi seçme Hücre1.' seçeneğini seçin 'Sayfa adının veya tanımlı aralığın değeri alınıyor DefinedName = ActiveCell.Offset(0, 1).Value Select Case Cell1.Value Case 1 'Tanımlanmış sayfa Sheets(DefinedName) seçiliyor .Vaka 2'yi seçin 'Tanımlanan aralığı seçme Application.Goto Reference:=DefinedName Durum 3 'Tanımlanmış özel görünümü seçme ActiveWorkbook.CustomViews(DefinedName).Show End 'Gerekli verileri yazdırma ActiveWindow.SelectedSheets.PrintOut Sonraki Application.ScreenUpdating = Gerçek Son Alt
Bu blogu beğendiyseniz, Facebook'ta arkadaşlarınızla paylaşın. Ayrıca bizi Twitter ve Facebook'ta da takip edebilirsiniz.
Sizden haber almayı çok isteriz, işimizi nasıl geliştirebileceğimizi ve sizin için nasıl daha iyi hale getirebileceğimizi bize bildirin. E-posta sitesinde bize yazın