sendkeys kullanımı

Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
merhaba,

yazıcının ayarlarını değiştirmek için sendkeys kullanmaya çalışıyorum, ancak bir yerde işlemiyor.

Kod:
Sub vvvv()

SendKeys ("^p"), True
SendKeys ("%m"), True
SendKeys ("u"), True

' problem aşağıdaki satırda.

SendKeys ("1"), True

End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,013
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki gibi deneyiniz.

Kod:
Application.SendKeys Chr(49), True
 
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
Aşağıdaki gibi deneyiniz.

Kod:
Application.SendKeys Chr(49), True
teşekkürler ancak yine olmadı.

verdiğiniz komutu hem Application.SendKeys hem de SendKeys ifadeleri ile ekledim, ancak ikisinde de olumsu sonuç alamadım.

şöyle bir durum var.

bu makro işlerken 1 tuşuna basarken herhalde bir hata oluşuyor. bilgisayardan hata sesi çıkıyor.

kendim sırasıyla manuel olarak aşağıdaki tuşlara sırasıyla basarken herhangi bir hata ile karşılaşmıyorum.

CTRL + P
ALT
m
u
1

ve yazıcının ayar penceresi açılıyor.

makroda ise 1 harfine basınca hata sesi geliyor.
 
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
aynı yerde "1" yerine "2" yazınca önizlemeye gidiyor. ama "1" yazınca hata veriyor.

acaba yarı bir pencere açtırdığı için güvenlik nedeniyle falan komutu işletmiyor olabilir mi???

bunu aşmanın bir yolu vardır diye düşünüyorum...
 
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
aynı düğmeye {tab 1, 2, 3,....} ile basmaya çalıştım,

Şunu fark ettim o düğmeye ve bazı düğmelere bu komutla ulaşılamıyor.

{tab 3} ile o düğmeye ulaşmam lazım ancak başka yere atıyor.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,013
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bende TAB tuşu ile deneyin diyecektim. Fakat son mesajınızda butona ulaşamadığınızdan bahsetmişsiniz.

Nette iki farklı kod buldum.

1. Kod;
Kod:
Sub ShowPrinterProperties()
    Call Shell("rundll32 printui.dll,PrintUIEntry /p /n " & Application.ActivePrinter)
End Sub
2. Kod;
Kod:
Sub ShowPrinterProperties()
    SendKeys "{TAB 6}"
    SendKeys "~"
    Application.CommandBars("File").Controls("Print...").Execute
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,013
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ayrıca dialog penceresi yardımıyla yazıcı ayarlarına ulaşabilirsiniz.

Kod:
Application.Dialogs(xlDialogPrinterSetup).Show
 
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
1. Kod;
Kod:
Sub ShowPrinterProperties()
    Call Shell("rundll32 printui.dll,PrintUIEntry /p /n " & Application.ActivePrinter)
End Sub
bu kodu da denemiştim "yazını adını kontrol edin" diye uyarı çıkıyrdu.

bunun yerine

Call Shell("rundll32 printui.dll,PrintUIEntry /e /n mg3500")

kullandım.

yazıcının ayarlarına ulaştırıyor, ancak bunda da saçma bir durum meydana geliyor.

şöyle ki;

Yzıcı özelliklerinde 3 değişik profil ayarlamıştım.
düz, ters ve çift
bunlardan birini seçtiriyorum ve onaylayıp pencereyi kapatıyor,
ancak yazdırmayı yine standart ayarlarıyla yapıyor.

şimdi yeni bir ayarı daha seçerek deneyeceğim,

"tüm yazdırmaları bu ayarlarla yaptır" seçeneğini kullanacağım.
 
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
Ayrıca dialog penceresi yardımıyla yazıcı ayarlarına ulaşabilirsiniz.

Kod:
Application.Dialogs(xlDialogPrinterSetup).Show
bununla açılan pencerede sendkeys çalışmıyor.
appactivate ile de pencereyi aktif edemiyorum.

"yazıcı ayarları" pencere adını kabul etmiyor.
 
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
2. Kod;
Kod:
Sub ShowPrinterProperties()
    SendKeys "{TAB 6}"
    SendKeys "~"
    Application.CommandBars("File").Controls("Print...").Execute
End Sub
bunu da çalıştıramadım...

aaaaaaaaaaaaaa......
 
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
sendkeys problemi

merhaba,

Birçok çalışma sayfasını arka arkaya yazdırmam gerekiyor.

Bu esnada bazı çalışma sayfalarını yazdırmadan önce yazıcının ayarlarını "geçici olarak" değiştirmeliyim.

bu nedenle aşağıdaki linkte bulunan pdf dosyasında anlattığım şekilde sendkeys yöntemine başvurdum,
ancak enteresan bir şekilde sadece son tuş basımını yapamıyorum.
sendkeys ile 1 tuşuna bastırmam gerekiyor.


sendkeys problemi.pdf


Kodun tamamı aşağıdadır.
Kod:
Sub asd()


SendKeys "^p", True
Application.Wait Now() + TimeValue("00:00:01")
SendKeys "%m", Wait
Application.Wait Now() + TimeValue("00:00:01")
SendKeys ("u"), Wait
Application.Wait Now() + TimeValue("00:00:01")
SendKeys ("1"), Wait

End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,013
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu sorunuz için neden ikinci başlığı açma ihtiyacı duyduğunuzu anlamadım. Açtığınız başlık sonuçlanana dek aynı başlıktan sorularınızı sormaya devam edebilirsiniz. Ben başlıklarınızı birleştirdim. Bundan sonra bu konuya dikkat etmenizi rica ederim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,013
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki kod ile yazıcı ayarlarına ulaşabildim. Sizde deneyiniz.

Kod:
Sub TEST()
    Application.SendKeys "{TAB 3}", True
    Application.SendKeys "~", True
    Application.Dialogs(xlDialogPrinterSetup).Show
End Sub
 
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
Bu sorunuz için neden ikinci başlığı açma ihtiyacı duyduğunuzu anlamadım. Açtığınız başlık sonuçlanana dek aynı başlıktan sorularınızı sormaya devam edebilirsiniz. Ben başlıklarınızı birleştirdim. Bundan sonra bu konuya dikkat etmenizi rica ederim.
önceki başlıkta derdimi iyi anlatamadım ve konu dağıldı diye düşündüm.
sorunu daha iyi bir şekilde anlatmak için görsel bir dosya hazırladım.
o yüzden yeni başlık açma ihtiyacı duydum.

konu kirliliği yapmak istemezdim.
 
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
Aşağıdaki kod ile yazıcı ayarlarına ulaşabildim. Sizde deneyiniz.

Kod:
Sub TEST()
    Application.SendKeys "{TAB 3}", True
    Application.SendKeys "~", True
    Application.Dialogs(xlDialogPrinterSetup).Show
End Sub
çok teşekkür ederim,

yemen gereken ekmeklere bir fırın daha eklendi,

ben sendkeys ile application.sendkeys arasındaki farkı ve
yazılan komutların neden ters sıralandığını öğrenmeliyim.


sizin gönderdiğiniz kodu işimi görecek şekilde revize ettim ve denedim,

çalışıyor,

çok teşekkür ederim.

Bnede çalışan örnek kod aşağıdadır.

Kod:
Sub asd()

    Application.SendKeys "{TAB 3}", True
    Application.SendKeys "~", True
    Application.Wait Now() + TimeValue("00:00:01")
    Application.SendKeys "{tab 3}", Wait
    Application.Wait Now() + TimeValue("00:00:01")
    Application.SendKeys " ", Wait
    Application.Wait Now() + TimeValue("00:00:01")
    Application.SendKeys "{tab 13}", Wait
    Application.Wait Now() + TimeValue("00:00:01")
    Application.SendKeys " ", Wait
    Application.Dialogs(xlDialogPrinterSetup).Show

    

End Sub
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,852
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
merhaba;

linki tıkladığımda şu şekilde bir uyarı çıkıyor.

"Üzgünüz, sonuç bulunamadı. Lütfen tekrar deneyiniz. "

tam arama metnin verirseniz ben de sizin ulaştığınız sonuçları inceleyebilirim.

saygılar.
Sayfanın üst tarafında arama yazısı var oraya LPT1 yazın ve aratın çıkan linkleri irdeleyiniz.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,013
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki renkli bölüm bende hataya sebep oluyor. Sizde sorun yaratmıyor mu?

Kod:
Application.SendKeys "{tab 3}", [COLOR="Red"]Wait[/COLOR]
Normalde renkli bölüme True yada False yazmak gerekiyor.
 
Üst