• DİKKAT

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

Combobox ile istediğimiz sayfadaki istediğimiz alanı nasıl yazdırırız?

Katılım
14 Ocak 2012
Mesajlar
52
Excel Vers. ve Dili
Excel 2016
Combobox ve bir düğme ile istediğimiz sayfadaki istediğimiz alanı nasıl yazdırırız? Örneğin;

-combobox'ta A'yı seçtiğimde ve yazdır ismini verdiğim düğmeye bastığımda; A sayfasında A1:B10 aralığı,

-combobox'ta B'yı seçtiğimde ve yazdır ismini verdiğim düğmeye bastığımda; B sayfasında B5:C20 aralığını yazdırmak istiyorum.

Forumda birkaç örnek buldum ama acemi olduğum için yorumlayıp kendi istediğim şekle dönüştüremedim. Bu şekilde bir vba komut dizisi yazabilirseniz ben istediğim şekilde onu dönüştürüp kendi excel projeme uygulayabilirim.
 
Örnek dosya ile anlatırsanız çözüm kolay olur. Sayfa isimlerini combobox içerisine alır, aralık kısmını da textbox aracılığıyla yazdırabiliriz.
 
@muygun düşündüğümden farklı bir çözüm olmuş ama bu şekilde de çok işime yarar, yardımınız için teşekkürler :)

bu düşüncem için uzun zamandır bir çözüm arıyordum, internetteki ve buradaki farklı örnekleri yorumlayıp kendim yapmaya çalışıyordum ama bilgi olmadan çok zor bir iş, sonunda pes ettim ve yardım istedim, yardım ettiğiniz için tekrar teşekkürler :)
 
@muygun merhaba kodlarınızla uğraşırken birden fazla aralık verip çıktı alma olayını yapabildim fakat kodları bir adım daha geliştirerek değerlerin makroyu çalıştıran düğmeden farklı bir sayada olmasını sağlamaya çalıştım ama tıkandım. Bu konuda yardımcı olabilir misiniz? Kodları şu şekile getirdim.

Kod:
Sub yazdır()
For i = 3 To Range("a65536").End(xlUp).Row
If ThisWorkbook.Worksheets("alan").Cells(i, "a") = ThisWorkbook.Worksheets("yazdırma").Cells(4, "e") And ThisWorkbook.Worksheets("alan").Cells(i, "c") <> "" Then
aralık1 = ThisWorkbook.Worksheets("alan").Cells(i, "c")
aralık2 = ThisWorkbook.Worksheets("alan").Cells(i, "d")
Set s1 = ThisWorkbook.Worksheets(Cells(i, "b").Value)
s1.Range(aralık1).PrintOut
s1.Range(aralık2).PrintOut
End If
Next i
End Sub

Yani "alan" isimli bir sayfa yaptım ve bütün alan tanımlamaları bu sayfaya aktardım. yazdırma isimli sayfada sadece hücrede açılır liste ve yazdır düğmesi var. Fakat eğer yaptıklarım doğruysa şu satırda kaldım;

Kod:
Set s1 = ThisWorkbook.Worksheets(Cells(i, "b").Value)

Buradaki satıra "alan" sayfasını nasıl yazacağımı bilemedim.

Düzenlediğim dosya burada;
http://dosya.co/6r0cpoqs46ek/aytacesmebasi-yazdırma_aralığı2.zip.html
 
@muygun teşekkür ederim. Sanırım ben sağ kulağımı sol elimle tutmaya çalışmışım :) sayfa tanımlamasını baştan yapmak hiç aklıma gelmedi.
 
Kulağı bulabildiğin sürece mesele yok..
:)
 
Geri
Üst