Butona Hem yazdırma hemde Kaydetme görevi atamak istiyorum.

Katılım
13 Aralık 2017
Mesajlar
14
Beğeniler
0
Excel Vers. ve Dili
Excel 2010
#1
Herkese hayırlı günler, bir problemim var ve yardımcı olacak arkadaş olursa çok sevinirim.
CommandButton1 ibareli butonuma tıkladığımda Sayfa2 yi yazdırmasını ve yazdırdığım Sayfa2 yi Sayfa1 de yer alan B2 hücresine yazdığım ibareyle Masaüstünde yer almakta olan 56 adlı klasör altına kaydetmesini istiyorum. İnşallah anlatabilmişimdir yardımcı olursanız çok sevinirim.
 

cems

Altın Üye
Altın Üye
Katılım
2 Eylül 2005
Mesajlar
1,965
Beğeniler
13
Excel Vers. ve Dili
office 2003 tr + office 2010 tr 32bit
#3
Bir örnek dosyayı bir dış servera yükleyip linkini buraya ekleseydiniz çoktan çözülmüş olurdu.
Bu şekilde söylenecek tek şey print almak için tuş altındaki kodların sonunda end sub dan önceki satıra

If worksheets("sayfa2").Range("b2") <> "" than ' B2 hücresi boş değilse
sayfa2.printout
end if

eklemeniz .

Ya da belli bir ibare kullanacaksanız

If worksheets("sayfa2").Range("b2") = "sizin ibareniz " than ' B2 hücresi ibare ile dolu ise
sayfa2.printout
end if

eklemeniz konuyu kısmen çözebilir.
 
Son düzenleme:

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
2,577
Beğeniler
160
Excel Vers. ve Dili
2007 Türkçe
#4
Merhaba,
Alternatif olsun.
PHP:
Sub CommandButton1_Click()
Dim s1 As Worksheet: Set s1 = Sheets("Sayfa1")
Dim s2 As Worksheet: Set s2 = Sheets("Sayfa2")
yol = CreateObject("WScript.Shell").specialfolders("Desktop") & "\56\"
s2.Copy
ActiveWorkbook.SaveAs yol & s1.Range("B2") & ".xlsx", xlOpenXMLWorkbook
ActiveWorkbook.Close
s2.PrintOut
End Sub
 
Katılım
13 Aralık 2017
Mesajlar
14
Beğeniler
0
Excel Vers. ve Dili
Excel 2010
#6
Bir örnek dosyayı bir dış servera yükleyip linkini buraya ekleseydiniz çoktan çözülmüş olurdu.
Bu şekilde söylenecek tek şey print almak için tuş altındaki kodların sonunda end sub dan önceki satıra

If worksheets("sayfa2").Range("b2") <> "" than ' B2 hücresi boş değilse
sayfa2.printout
end if

eklemeniz .

Ya da belli bir ibare kullanacaksanız

If worksheets("sayfa2").Range("b2") = "sizin ibareniz " than ' B2 hücresi ibare ile dolu ise
sayfa2.printout
end if

eklemeniz konuyu kısmen çözebilir.
Beyefendi konuma cevap vermişsiniz çok teşekkür ederim
Söylediğiniz şekilde dosya hazırladım mümkünse bakabilirmisiniz ?
http://s7.dosya.tc/server14/34q3hd/Ornek.rar.html
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
2,577
Beğeniler
160
Excel Vers. ve Dili
2007 Türkçe
#7
Tekrar merhaba,
Yüklediğiniz dosyada önceki anlatımınızdan farklı bir şey algılayamadım. Yukarıdaki mesajda yazdığım kod anladığım kadarıyla zaten isteğinizi karşılıyor. B2 hücresine bir değer girip deneyiniz. (Masaüstünüzde 56 klasörü olmalı)
 
Üst