Alt+H Kombinasyonu

Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Kod:
Private Sub ListBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

If KeyCode = 18 And KeyCode = 72 Then
MsgBox "Alt & h"
End If

End Sub
Bu kod neden çalışmaz ? :)
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Kod:
Sub kısayol()
Application.OnKey "%{h}", "DENEME"
End Sub

Sub DENEME()
MsgBox "uyarı"
End Sub
Bu kodlar ile normal sayfada Alt + H kombinasyonunu kullanabiliyorum fakat vba üzerinde işlemiyor.
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Amacınızı anlamadım ama şunu deneyiniz:
Kod:
Dim alt As Boolean
Private Sub ListBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 18 Then
    alt = True
ElseIf KeyCode = 72 And alt = True Then
    MsgBox "Alt & h"
    [COLOR="Red"]alt = False[/COLOR]
End If
End Sub

Private Sub ListBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 18 Then alt = False
End Sub
 
Son düzenleme:
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Bu kodlarla oluyor fakat,
Bir kere Alt+H yapınca sonrasında Her "H" tuşuna basınca kod çalışmaya devam ediyor.

Amaç Basit aslında;

userform açıkken ve listbox1 seçili iken Alt +H tuşlarınabastığımda bir kod çalıştıracağım.

Bunu aşabilirsem Harfler değişecek;
Alt +H
Alt + F
Alt + Y
vs..
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Hata düzeltmesi için koda kırmızı satırı ilave ediniz.
Kod:
MsgBox "Alt & h"
[COLOR="Red"]alt = False[/COLOR]
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Evet o şekilde yapmıştım:)
Burada Dim alt As Boolean
boolean ne değeri katıyor?
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Boolen olarak tanımlanan değer True veya False değerlerini alabilir.
Detay için linkleri inceleyebilirsiniz.
Değişkenler
Değişken Tanımlama

Bir de kodu değiştirdim tuştan her kalkışta altı iptal etmek varken... Nedense bazen bir noktaya saplanıp kalıyoruz...
Kod:
Dim alt As Boolean
Private Sub ListBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 18 Then
    alt = True
ElseIf KeyCode = 72 And alt = True Then
    MsgBox "Alt & h"
End If
End Sub

Private Sub ListBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
alt = False
End Sub
İyi çalışmalar...
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Bir de Alt H kombinasyonunda Pcden "Ding" Diye bir ses çıkıyor.
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
O ses yanlış tuşa basılmasıyla alakalı... Nedenini bilmiyorum.
Bir de soruyu bu şekilde sorduğunuz için sadece Alt+H şeklinde çözüm üretmeye çalıştım ancak sizin için ikili tuş kullanımı zaruri değilse acizane bu gibi işlemlerde fonksiyon tuşlarını kullanmayı tercih ederim.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Evet hatalı tuşa basma uyarısı veriyor.
Aslında amaç Alt H ile kısayol oluşturmak. Listeden seçilecek satırdaki değerin "Hareketlerini" Gösterecek.
Alt Y kombinasyonu Yazdıracak
Alt F ise Fiyatını gösterecek.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Enteresan birşey var :)

Aynı kodları Ctrl+H kombinasyonu kullanarak yaptığımda hiç ses çıkmıyor :)
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Vazgeçtim sadece Harfleri kullanarak yapacağım :)
Sadece H tuşu ile işimi göreceğim.
 
Üst