ComboBox'ta yalnız yukarı ve aşağı ok tuşları etkin o

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Mrb.
Combobox'ta bulunan verileri açılır kutudan gösterebiliyorum.
Yukarı Ok tuşu ve Aşağı ok tuşu ile'de combobox'taki verileri görebiliyorum.
Bunarın olmasını ve combobox'a Yukarı ve Aşağı ok tuşları dışında Başka bir tuş'un etkili olmamasını istiyorum.
Yani combobox'a yalnızca yukarı ve Aşağı ok tuşları etki etsin istiyorum.
Yukarı ve aşağı ok tuşları dışında başka bir giriş yapıldığı takdirde
Combobox1.Listindex=0 olsun istiyorum.
Teşekkür ederim.
İyi çalışmalar.
:hey:
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Comboboxa aşağıdaki kodu yazarak deneyin.

[vb:1:63ca727832]Private Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
ComboBox1.ListIndex = 0
If KeyCode <> 38 Or KeyCode <> 40 Then SendKeys "{bs}"
End Sub
[/vb:1:63ca727832]
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
leventm' Alıntı:
Comboboxa aşağıdaki kodu yazarak deneyin.

[vb:1:d45ab40b16]Private Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
ComboBox1.ListIndex = 0
If KeyCode <> 38 Or KeyCode <> 40 Then SendKeys "{bs}"
End Sub
[/vb:1:d45ab40b16]
Teşekkür ederim.
iyi çalışmalar.
:hey:
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Mrb.
Kod:
Private Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
ComboBox1.ListIndex = 0
If KeyCode <> 38 Or KeyCode <> 40 Then SendKeys "{bs}"
End Sub
Levent M Arkadaşımızın yolladığı Yukarıdaki kodu aşağıdaki gibi Kullandım.Böylece combobox içindeki veri kaybolmadan başka bir tuşa basılsada sabit kalıyor.Ancak Fara ile combobox'taki veriyi seçip Delete tuşuna bastığımda veya Backspace tuşuna bastığımda combobox'ın içindeki veri siliniyor.Bu silme'yi önleyebilirmiyiz.
Teşekkür ederim.
İyi akşamlar.

Kod:
ComboBox1.ListIndex = 0
If KeyCode <> 38 Or KeyCode <> 40 Then SendKeys "{bs}"
End Sub
:hey:
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Eğer varsa, ComboBox1_KeyPress prosedurunu silin ve aşağıdakini yerleştirin....

Kod:
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
                              ByVal Shift As Integer)
    If KeyCode <> vbKeyUp And KeyCode <> vbKeyDown Then KeyCode = False
End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Haluk' Alıntı:
Eğer varsa, ComboBox1_KeyPress prosedurunu silin ve aşağıdakini yerleştirin....

Kod:
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _
                              ByVal Shift As Integer)
    If KeyCode <> vbKeyUp And KeyCode <> vbKeyDown Then KeyCode = False
End Sub
----------------------------
Teşekkür ederim.
İyi çalışmalar.
:hey:
 
Üst