Her iki yüze yazdır makrosu

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Selamlar
Yazıcımda "Her iki yüze yazdır" seçeneği bulunuyor. Bazı sayfaları önlü arkalı yazdırmak istiyorum. İşlem bitince tekrar tek yüze dönmesini istiyorum. Makro kaydet ile yapmaya çalıştım ama sayfa yapısı seçeneğinde yazıcı özelliklerinde bulunan onay işaretini makro görmüyor. Bu sorunu nasıl aşabilirim?

Sub Makro3()
Range("G8:H110").Select
ActiveSheet.PageSetup.PrintArea = "$G$8:$H$110"
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.75)
.RightMargin = Application.InchesToPoints(0.75)
.TopMargin = Application.InchesToPoints(1)
.BottomMargin = Application.InchesToPoints(1)
.HeaderMargin = Application.InchesToPoints(0.5)
.FooterMargin = Application.InchesToPoints(0.5)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
End Sub
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Excelin tek yapamadığı herhalde yazıcı ayarlarına girebilmek.
3 gündür araştırıyorum hiçbir sitede (yabancı siteler dahil) bu konuyla ilgili bir bilgiye rastlamadım. Sn. ripek'in "Yazıcı değiştir" makrosunu görünce, aynı yazıcıyı ad değiştirerek 2. kez kurmayı denedim, o da olmadı. Makro komutları ile ilgili bir bilgim olmadığı için zaten orda eksi durumdayım. Sonuçta yukarıdaki kanaate vardım.
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
İyi günler.
Access için yazılmış bazı kodlar buldum (Herhalde kullanıcı tanımlı). Yalnız İngilizcem iyi olmadığından fazla bir şey anlamadım. Acaba bu kodlar Excele uyarlanabilir mi?

Private Sub PrintCatalogReport()
Dim rpt As Report

Application.Printer = Application.Printers(0)

DoCmd.OpenReport "Catalog", acViewPreview, , , acHidden
Set rpt = Reports!Catalog

With rpt.Printer
.BottomMargin = 720
.Copies = 2
.Duplex = acPRDPVertical 'Double sided
.PaperBin = acPRBNLargeCapacity
End With
DoCmd.OpenReport "Catalog", acViewNormal
DoCmd.Close acReport, "Catalog", acSaveNo

Set Application.Printer = Nothing
End Sub


Alıntı :
http://support.microsoft.com/?kbid=284286
 
Katılım
8 Mayıs 2005
Mesajlar
87
Excel Vers. ve Dili
Office 2010 - 2013 İngilizce
Merhaba,

Eski bir başlık aslında Ama konu konusunda ben de bir sonuca varmadığımdan belki bilen birileri olabilir diye yazmak istedim

Arkalı önlü (duplex) basmak için gerek record macrodan (record macro zaten kaydetmiyor bu özelliği) ya da benzer bir kodla ben de bulamadım açıkçası internette Sadece windows api ile ilgili kodlar vardı önlü arkalı basabilmek için Onlar da benim anlayış sınırımı aşıyordu.

En sonunda sendkeys yöntemi ile page setupa erişip, oradan arkalı önlü seçeneği işaretledikten sonra çıktı alabiliyorum.

Şimdilik bu işimi görüyorum Ama kullandığım makrolar, eklenti olarak bilgisayarda yer aldığından makrolar .xla uzantılı çalışma kitabındayken sendkeys yöntemi ile baskı ayarını değiştiremiyorum. ilgili pencereyi açıp bırakıyor sadece

Yardım edebilecek ya da fikri olan var mı?
 
Katılım
13 Aralık 2006
Mesajlar
575
Excel Vers. ve Dili
Office 2010
Uzmanlarımızdan bu konuda yardımlarına ihtiyaç sözkonusu oldu. Sorun hemen hemen aynı ben de makro ile yazıcıdan çıktı alırken kaset değiştirmek istiyorum. 1 adet ön tabladan 1 adet alt tabladan. bir çok yazıcı bu özellik mevcut ama bu işi makro ile nasıl yaparız?
 
Katılım
13 Aralık 2006
Mesajlar
575
Excel Vers. ve Dili
Office 2010
sendkeys bazen eksik işlev yapıyor

Sorunumu ben de Demirtas'ın tavsiye ettiği "sendkeys" yöntemi ile halletmeye çalıştım ama şöyle bir sorun hasıl oluyor. bazen tüm komutlar tamamen işliyor bazen ise son enter tıklanmıyor bazen de tablardan birisi eksik kalıyor. acaba neden olabilir. kodlarım aşağıdaki şekilde;
Sub sigbyaz_click()
Sheets("SİGB").Select
Application.SendKeys "^p"
Application.SendKeys ("{TAB 6}")
Application.SendKeys ("{enter}")
Application.SendKeys ("%k")
Application.SendKeys ("{enter 2}")
End Sub
 
Katılım
13 Aralık 2006
Mesajlar
575
Excel Vers. ve Dili
Office 2010
bir yerlerden şu kodları da denedim, eksik tab işi kalmadı ama son enter olayı olmuyor, acaba neden olmuyor?
Dim AltKey As String
Dim CtrlKey As String
Dim ShiftKey As String
Dim TabKey As String
Dim EnterKey As String
'--------------------------
AltKey = "%"
CtrlKey = "^"
ShiftKey = "+"
TabKey = "{TAB}"
EnterKey = "~"
SendKeys CtrlKey & "(p)"
SendKeys AltKey & "(z)"
SendKeys AltKey & "(k)"
SendKeys ("{down}")
SendKeys EnterKey
SendKeys EnterKey
Sheets("Bilgiler").Select
 
Katılım
13 Aralık 2006
Mesajlar
575
Excel Vers. ve Dili
Office 2010
vallahi benim elimden gelen bu kadar, deneme yanılma yolu ile denemediğim yol kalmadı :) e artık bi el atsanız ii olacak gibi saygıdeğer uzmanlar. hani kendim uğraşmadan yardım istemedim demeye getiriyorum :) artık elinizi vicdanınıza koyun karşınızda çalışkan bir öğrenci var. derslerime gerçekten ii çalışırım :)
 
Katılım
12 Kasım 2007
Mesajlar
327
Excel Vers. ve Dili
excel 2003
Sayın Harziyan
Bu konu ile ben de ilgileniyorum
6. ve 7.mesajdaki komutlar ne anlama geliyor sırayla açıklamanız mümkünmü?
Teşekkürler
 
Katılım
13 Aralık 2006
Mesajlar
575
Excel Vers. ve Dili
Office 2010
sayın hocam iki mesajda özünde aynı işe yarıyor ben belki sıkıntımı giderebilirim diye uğraş verdim ama beceremedim. Sana faydası olacaksa anlatayım.

Sub sigbyaz_click()
Sheets("SİGB").Select 'benim çalışma sayfam.
Application.SendKeys "^p" 'CTRL+p'ye bas yani yazdır bölümünü aç.
Application.SendKeys ("{TAB 6}") '6 kez TAB tuşuna basarak yazdır bölümündeki "Özellikler"e ulaşabilmek için.
Application.SendKeys ("{enter}") 'Özellikleri açıyorum.
Application.SendKeys ("%k") 'Alt+k tuşuna basarak kaset seçme bölümünü aktif ediyorum.
Application.SendKeys ("{enter 2}") '2 kez enterleyerek olay bitiyor ama bende bitmedi :)
End Sub
Bu da diğeri için ama önce bir küçük bilgi vereyim. pencereler açıldığında Alt tuşuna bastığımızda "ALt" ile birlikte kullanılarak kısayollar ile girilecek bölümlere ilişkin harfler altı çizili olarak görülüyor.

AltKey = "%"
CtrlKey = "^" 'Kod yazarken kolaylık olsun diye işaretlerin kalabalığı yerine kolay anlaşılır ifadeler için yazıldı
ShiftKey = "+"
TabKey = "{TAB}"
EnterKey = "~"
SendKeys CtrlKey & "(p)" 'Yine CTRL+p ile yazdır menüsü
SendKeys AltKey & "(z)" 'Alt+z ile özellikler'e giriş. 6 kez tab'a basmaya gerek kalmadı.
SendKeys AltKey & "(k)" 'alt+k ile kaset değiştir böölümünü aktif etme
SendKeys ("{down}") 'Aşağı ok tuşuna basarak kaset değiştirmek
SendKeys EnterKey 'Yine iki kere enterleyip olayı bitirmek :) ya da bitirememek.
SendKeys EnterKey
Sheets("Bilgiler").Select
 
Üst