• DİKKAT

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

Listbox da görünenleri yazdirmak

Katılım
8 Ocak 2009
Mesajlar
57
Excel Vers. ve Dili
2013 türkçe
Anaformda sorgu yaptığımda sorgu sayfasına tüm datadaki kayıtlı bilgiler geliyor. Bende listbox da sadece d-e-f-g sütunlarıni göstererek bakiyorum. Daha sonra yazdırmak istediğimde sadece listbox da görününenleri yani Sorgu ya gelen sayfadaki d-e-f-g sütunlarıni yatay yazdirabilecek şekilde makro kodlar yazmak mümkün mü?
 
"Önizle" butonu için deneyiniz.

C++:
Private Sub btnonizle_Click()
    With Sheets("Onizle")
        .Range("A4:D" & Rows.Count).ClearContents
        Satir = lstDetay.ListCount
        .Range("A4:D4").Resize(Satir) = lstDetay.List
    End With
End Sub
 
Selamlar hocam bu listbox banada lazım Korhan hocamın verdiği önizleme kodlarını yapıştıramıyorum belge koruması var ,bu korumayı nasıl kaldıracağım..
 
VBA editörüne geçip yazdır butonunda ki kodun başındaki tek tırnağı kaldırmalısınız.

Yine aynı ekranda benim verdiğim kodu ilgili butona uygulamalısınız.

O zaman çalışacaktır.
 
223814
Korhan Hocam dediğinizi uyguladığımda böyle bir hata alıyorum.
 
Merhabalar,
Eğer Enboy81 in 3 nolu mesajındaki dosyada işlem yapıyorsanız, Onizle sayfası B1 ve B2 deki formülü silerek, sorgu ve Yazdır sayfasına gerek kalmadan alttaki kodlar ile hem ön izleme yapar hem yazdıra bilirsiniz. (btnonizle_Click veya btnYazdır_Click butonlarından birine yazarsanız)

Private Sub btnonizle_Click() veya Private Sub btnYazdır_Click()
On Error Resume Next
With Sheets("Onizle")
.Range("A4:d" & Rows.Count).ClearContents
.Range("b1:b2").ClearContents
Satir = lstDetay.ListCount
.Range("A4:d4").Resize(Satir) = lstDetay.List
End With
Sheets("Onizle").Range("B1").Value = txtad.Text
Sheets("Onizle").Range("B2").Value = txtsoyad.Text


soru = MsgBox("Sayfa Yazdırılacak, Önizleme Yapmak İstiyor musunuz?", vbYesNo, "Önizleme")
If soru = vbYes Then
Me.Hide
Sheets("Onizle").PrintPreview
Me.Show
Range("A1").Select
Else
Sheets("Onizle").PrintOut
End If
End Sub
 
Merhabalar,
Eğer Enboy81 in 3 nolu mesajındaki dosyada işlem yapıyorsanız, Onizle sayfası B1 ve B2 deki formülü silerek, sorgu ve Yazdır sayfasına gerek kalmadan alttaki kodlar ile hem ön izleme yapar hem yazdıra bilirsiniz. (btnonizle_Click veya btnYazdır_Click butonlarından birine yazarsanız)

Private Sub btnonizle_Click() veya Private Sub btnYazdır_Click()
On Error Resume Next
With Sheets("Onizle")
.Range("A4:d" & Rows.Count).ClearContents
.Range("b1:b2").ClearContents
Satir = lstDetay.ListCount
.Range("A4:d4").Resize(Satir) = lstDetay.List
End With
Sheets("Onizle").Range("B1").Value = txtad.Text
Sheets("Onizle").Range("B2").Value = txtsoyad.Text


soru = MsgBox("Sayfa Yazdırılacak, Önizleme Yapmak İstiyor musunuz?", vbYesNo, "Önizleme")
If soru = vbYes Then
Me.Hide
Sheets("Onizle").PrintPreview
Me.Show
Range("A1").Select
Else
Sheets("Onizle").PrintOut
End If
End Sub

Evet onun üzerinde çalışıyorum.Çok teşekkür ederim çalıştı,ellerinize sağlık...
 
Tekrardan kontrol ederseniz iyi olur çünkü bende çalıştı...
 
Selam arkadaşlar herkesin yeni yılı kutlu olsun.Bu dosayayı biraz daha geliştirmek istiyorum yazdırdığım sonradan kendim ileve ettim sarı yerleride nasıl formüle edip yazdıracağım.yani önceki bakiye günlük tutar ödeme yaparsa ve ya yapmasa kalan bakiyede yazdırsın.Şimdiden teşekkürler...
 

Ekli dosyalar

Geri
Üst