VBA / VB6 - forțează deschiderea unui ComboBox

Excel când este combinat cu VBA, formează un instrument puternic pentru a crea soluții personalizate și automatizate de analiză a datelor. VBA are built-in controale cum ar fi ComboBox, care permit utilizatorilor să selecteze dintr-o listă deja populate sau să furnizeze propriile lor intrări. Se pot conecta două ComboBox-uri utilizând metoda SetFocus într-un cod personalizat. După aceasta, utilizatorul poate rula un alt cod care utilizează codul de taste care se întoarce de la un ComboBox pentru a inițializa celălalt. Această caracteristică ajută programatorul să configureze un cod astfel încât, odată ce se face selecția în ComboBox1, se va deschide automat al doilea ComboBox.

Pentru a forța un ComboBox să se deschidă este următoarea funcție ...

 ComboBox1.DropDown 

Dar ... pentru asta avem focusul ComboBox și dacă comanda de la un alt control nu se va deschide.

Pentru a deschide un alt ComboBox trebuie să folosiți un truc aici:

  • Plasați 2 ComboBox pe o foaie de lucru sau pe un UserForm și denumiți-le respectiv ca ComboBox1 și CombBox2
  • Utilizați următorul cod pentru a conecta cele două ComboBox:

 Private Sub ComboBox1_Change () '========== Combo sur une feuille ========= 1' ComboBox2.Activate '========== Combo pe un UserForm ou VB6 ========= 2 'ComboBox2.SetFocus' ================================== ======== SendKeys "^ (F4)" End Sub Private Sub ComboBox2_KeyDown (ByVal KeyCode ca MSForms.ReturnInteger, ByVal Shift ca Integer) Dacă KeyCode = 16 Apoi ComboBox2.DropDown Sfârșit Dacă End Sub 

Prin eliminarea liniei 1 sau 2 în funcție de locația ComboBox-ului.

Rezultat: când efectuați o selecție pe un ComboBox 1, al doilea se deschide automat.

Descărcați mostră pentru Excel 97 - 2003

  • Server 1: //sd-5.archive-host.com/membres/up/b05c9f3873215e8d2df70f056b74dce61198c32d/ASTUCES/3_combo__DropDown.xls

Articolul Precedent Articolul Următor

Cele Mai Importante Sfaturi