evet onu biliyorum ama benim istediğim şey farklı.
yaptığım ecxel dökümanından biraz bahsedeyim.
hücreleri bölerek excelde üstte yinelenen bir bölme yaptım ve yazıcıdan bu bölme kısmı devamlı tekrarlanarak çıkıyor. Benim istediğim bu bölünmüş ve tekrarlanan kısımdaki kendi seçtiğim bir hücrede bu sayfa numarasının yazması. Umarım derdimi anlatmakta başarılı olmuşumdur. Yardımlarınız için şimdiden teşekkürler.
[vb:1:8f03beda35]Sub yazdir()
say = ActiveSheet.HPageBreaks.Count + 1
For a = 1 To say
[j2] = "Sayfa No: " & a
ActiveSheet.PrintOut From:=a, to:=a
Next
End Sub
[/vb:1:8f03beda35]
levent çok teşekkür ederim. Gerçekten çok iyi bir visual basic bilgisine sahipsin. Bende senden ilham alarak visual basic öğrenmeye karar verdim. Bu kadar iyi bilmenin sırrı nedir?
Rica ederim. İşinize yaradığına sevindim. İltifatınıza için teşekkür ederim. Ã?ncelikle Visual Basic değil VBA(visual basic application) konusunda çalışıyorum bunu düzeltelim. Birde çok iyi bilgiye sahip olduğumu asla söyleyemem. Sadece iyi bir araştırmacı olduğumu söyleyebilirim. İnanın bilgi düzeyimi ve araştırmacı yönümü; tamamen bu sitedeki değerli üstatlarımız Sn Haluk ve Sn ALPEN başta olmak üzere Sn Danersin gibi tüm kod yazan arkadaşlarımız sayesinde geliştirdim ve geliştirmeye devam ediyorum. Sizede önerim forumumuz iyi takip edin ve kodların üzerinde deneme yanılma metodu ile değişiklikler yaparak sonucunu inceleyin.
Ãunuda belirteyim, sadece kod bilgisinin çok iyi olması yeterli değildir, çok daha önemlisi çözüm için nasıl bir mantık kurulacağının öğrenilmesidir, işte uzun zaman alanda işin bu tarafıdır. Mantık kurmakta klişeleşmiş çözümlerin dışında tamamen kişiye özgüdür, tıpkı insanın imzası gibidir. Aynı soru farklı kişilerce çok farklı mantıklarla çözülebilir.
Aşağıdaki kodu deneyin. Cancel derseniz 1 den başlayacaktır.
[vb:1:a417e6922c]Sub yazdir()
sor = InputBox("BAÃLANGIÇ DEÃERİNİ GİRİNİZ")
If sor = "" Then sor = 1
say = ActiveSheet.HPageBreaks.Count + 1
For a = 1 To say
[j2] = "Sayfa No: " & a + sor - 1
ActiveSheet.PrintOut From:=a, to:=a
Next
End Sub
[/vb:1:a417e6922c]
Gerçekten çok doğru söylüyorsunuz. Kullanılmayan bilgi, bilgi değildir mantığına bende katılıyorum. Benim VBA konusunda hiç bir bilgim yok. Bu makrolarıda 1 aydır öğreniyorum forum sayesinde. Hatta sizin verdiğiniz makroyu bile tam anlamıyla çalıştırmakta zorlanıyorum. Ama çok çabuk öğreniyorum birde yatkınlığım benim hızımı arttırıyor. Ancak iş, güç eskisi gibi zaman bulamıyorum bilgisayar konularına. Bana önerebileceğiniz "başlangıç seviyesi" kitapları veya cd tarzı birşey varmıdır? Ayrıca exceldeki makroları öğrenmek için Visual Basic mi öğrenmek lazım yoksa VBA mı? arasında ne fark var?
Not: Kitap konusunda bir şey söyleyemeyeceğim. Bu konuyla ilgili hiç kitap almadım açıkçası, VBA;kısaca VB dilinin office programlarına uygulanmış şeklidir diyebiliriz. Ben VBA ile başladım VB ye henüz geçme fırsatım olmadı maalesef. Sanıyorum birini iyi bilen diğerine adapte olmakta daha az sıkıntı çekecektir.
çok teşekkür ediyorum gerçekten çok iyi olmuş. özellikle esktradan bir yazdır butonu beni dahada mutlu ettiğini itiraf etmeliyim. Yalnız gene bir eksiklik daha var. Yalnışlıkla yazdır buttonuna bastıktan sonra geri dönüş yok yani illede yazdırıyor. bununda önüne geçebilme gibi bir durumumuz varsa gerçekten mükemmel olacak. Umarım fikirlerim size angarya gelmiyordur.
Bu durumda aşağıdaki gibi deneyin. Dosyadaki kodu tamamen silip yerine aşağıdakini kopyalayın. (kodu görmek için alt+F11)
[vb:1:90afc1b799]Sub yazdir()
If MsgBox("YAZDIRMAK İSTEDİÃİNİZE EMİNMİSİNİZ?", vbYesNo) = vbNo Then Exit Sub
sor = InputBox("BAÃLANGIÇ DEÃERİNİ GİRİNİZ")
If sor = "" Then sor = 1
say = ActiveSheet.HPageBreaks.Count + 1
For a = 1 To say
[j2] = "Sayfa No: " & a + sor - 1
ActiveSheet.PrintOut From:=a, to:=a
Next
End Sub
[/vb:1:90afc1b799]
levent bey bir sorun daha çıktı. eskiden eklediğim makro çalışmaz oldu daha doğrusu adet hanesine 3 rakamını girdiğimde değer hatası veriyor? ne yapmalı?
Sizlere daha iyi bir deneyim sunabilmek icin sitemizde çerez konumlandırmaktayız, web sitemizi kullanmaya devam ettiğinizde çerezler ile toplanan kişisel verileriniz Veri Politikamız / Bilgilendirmelerimizde belirtilen amaçlar ve yöntemlerle mevzuatına uygun olarak kullanılacaktır.