VBA ComboBox - Hogyan hozhatunk létre és használhatunk ComboBox-ot a VBA-ban?

Tartalomjegyzék

Excel VBA ComboBox

A ComboBox a VBA felhasználói űrlap szolgáltatása , ezek különböznek a szövegdobozoktól, mivel a szövegdobozok csak szöveget tartalmaznak, és bármilyen típusú adatot megadhatunk a felhasználó számára, de a kombinációs dobozok használatával korlátozzuk a felhasználót a kívánt választípusokra így az adatok rendezettek, hasonlóak a listában szereplő adatok validálásához az excelben.

A ComboBox összehasonlítható az Excel, a munkalapok legördülő listájával. Adatellenőrzést alkalmaztunk egy legördülő menü biztosításához, de a VBA-ban van egy felhasználói űrlap szolgáltatás, ahol bármely felhasználó űrlapjánál legördülő menü biztosítására szolgál, de ha egy kombinációs mezőt akarunk használni az excelben, akkor a fejlesztői részből is elérheti onnan, kombinációs dobozokat hozhatunk létre egyes vagy több cellához.

A Combo Box nagyon hasonlít az Excel munkalapon található legördülő listához; a combo box segítségével előre meghatározott értékeket tárolhatunk, hogy a felhasználók a combo boxból elérhető listáról válasszák. A Combo Box-ot általában a felhasználói űrlappal együtt használják a felhasználóktól származó input megszerzésének részeként.

A felhasználói űrlapok hasznosak, de a felhasználói űrlapon egyéb eszközök használata teszi különlegessé a felhasználói űrlapot. Az egyik eszköz, amelyet gyakran használunk a felhasználói űrlap eszközeként, a „ComboBox”.

A VBA ComboBox létrehozásának 2 legfontosabb módja

# 1 - A közvetlen kódolás használata

Először meglátjuk, hogyan kell használni a Combo Box-ot a munkalappal. Nyissa meg az excel munkafüzet bármely munkalapját, lépjen a Fejlesztő fülre, és ezen a lapon van egy „Beszúrás” nevű eszköz. Kattintson erre, és ez alatt két lehetőségünk van az Active X vezérlők és az űrlapvezérlők az excelben.

Az „Active X Controls” részben válassza a „Combo Box” lehetőséget.

Most bármelyik munkalapra megrajzolhatja ezt az objektumot.

Kattintson a jobb gombbal a kombinációs mezőre, és válassza a „Tulajdonságok” lehetőséget.

Ha a tulajdonságokat választja, akkor egy kombinációs doboz tulajdonságainak hatalmas listája nyílik meg.

Ehhez a kombinációs mezőhöz megadjuk az osztályok nevének listáját, ezért változtassa meg a kombinációs doboz név tulajdonságát "DeptComboBox" -ra.

Most erre a kombinációs mezőre a „DeptComboBox” név utal. Előre meghatározott osztályneveket kell megadnunk, ezért itt van egy részlegnevek listája.

Most hozzá kell adnunk ezeket az értékeket a kombinációs mező listához. Ezt kétféleképpen tehetjük meg, kódolással vagy névkezelőn keresztül.

Kattintson duplán a Comboboxra, és ezzel eljut a VBA makró eljárásához.

De meg kell látnunk ezeket a részlegneveket, amikor megnyílik a munkafüzet, ezért kattintson duplán a „ThisWorkbook” elemre.

A legördülő listából válassza a „Munkafüzet” lehetőséget.

A lehetőségek közül válassza a „Megnyitás” lehetőséget.

Most az alábbihoz hasonló üres részt hoz létre.

Ebben a makróban írja be az alábbi kódot.

Kód:

Private Sub Workbook_Open () munkalapokkal ("Sheet1"). DeptComboBox .AddItem "Finance" .AddItem "Marketing" .AddItem "Merchandising" .AddItem "Operations" .AddItem "Audit" .AddItem "Ügyfélszolgálat" End End End Sub

Ok, most mentse el és zárja be a munkafüzetet. Amikor újra megnyitja a munkafüzetet, láthatjuk benne az osztályok nevét.

# 2 - A UserForm használata

Az értékek hozzáadásának másik módja a ComboBox-ban a felhasználói űrlap használata. Először adjon nevet a celláknak „osztály” néven.

Nyissa meg a Visual Basic Editor alkalmazást, és illessze be a Felhasználói űrlapot az INSERT opcióból.

Most létrejön az új felhasználói űrlap.

A felhasználói űrlap mellett láthatjuk az „Eszköztár” elemet erről az eszköztárról, beilleszthetjük a „Kombinált mezőt”.

Now the combo box is embedded in the user form. In this method, to open the properties option, select the combo box and press the F4 key to open the properties window.

Scroll down the properties tab and choose “Row Source.”

For this “Row Source,” enter the name that we had given to department name cells.

Now this combo box holds the reference of the name “Department.”

Now run the user form by using the run button.

Now we can see a list of department names in the combo box on the user form.

Practically user form is associated with a combo box, text box, and many other tools. We will create a simple data entry user form with a text box & combo box.

Create a user form like the below.

Create two Command Buttons.

Double click on the “SUBMIT” button it will open up below macro.

Inside this macro, add the below code.

Code:

Privát alparancsButton1_Click () Dim LR As Long LR = Cellák (Rows.Count, 1) .End (xlUp). Sor + 1 Cellák (LR, 1). Érték = TextBox1.Value Cells (LR, 2). Value = ComboBox1 . Érték Vége Sub

Most kattintson duplán a „CANCEL” gombra, és adja hozzá az alábbi kódot.

Most a munkalapon hozzon létre egy sablont, amely megfelel az alábbiaknak.

Most futtassa a felhasználói űrlapot, és így megnyílik.

Írja be az alkalmazott nevét, és válassza ki az osztály nevét a kombinált listából.

Kattintson a SUBMIT gombra, és nézze meg a varázslatot.

Az általunk létrehozott táblázat formátumban kaptuk meg az értékeket.

Dolgok, amikre emlékezni kell

  • A COMBO BOX saját tulajdonságokkal is rendelkezik.
  • Az értékek hozzáadása a listához kétféleképpen történik. Az egyik kódolási mód, a másik pedig a tartománynév hivatkozás.
  • A COMBO BOX általában a felhasználói űrlap része.

érdekes cikkek...