VBA ComboBox | Kuinka luoda ja käyttää ComboBoxia VBA: ssa?

Excel VBA ComboBox

ComboBox on VBA: n käyttäjälomakeominaisuus , ne eroavat tekstiruuduista, koska tekstiruutuja käytetään sisältämään vain tekstiä ja sallimme käyttäjän syöttää minkä tahansa tyyppisiä tietoja, mutta yhdistelmäruuduilla rajoitamme käyttäjää haluamallemme vastaustyypille Siksi data on kunnossa, se on samanlainen kuin luettelotietojen validointi Excelissä.

ComboBoxia voidaan verrata avattavaan luetteloon Excelissä, laskentataulukoissa käytimme tietojen validointia avattavan vaihtoehdon tarjoamiseen, mutta VBA: ssa on käyttäjälomakkeen ominaisuus, jossa sitä käytetään avattavan valikon tarjoamiseen missä tahansa käyttäjälomakkeessa, mutta Jos haluamme käyttää yhdistelmäruutua excelissä, voimme käyttää sitä myös kehittäjäosastolta ja voimme luoda yhdistelmäruutuja yksittäisille tai useille soluille.

Yhdistelmäruutu on hyvin samanlainen kuin avattavan luettelon, joka on Excel-laskentataulukossa, yhdistelmäruudulla voimme tallentaa ennalta määritetyt arvot, jotta käyttäjät voivat tehdä valinnan luettelosta saatavana yhdistelmäruudusta. Combo Boxia käytetään yleensä käyttäjälomakkeiden kanssa osana käyttäjien saaman syötteen saamista.

Käyttäjälomakkeet ovat hyödyllisiä, mutta muiden lomakkeiden käyttäminen käyttäjälomakkeessa tekee käyttäjälomakkeesta niin erikoisen. Yksi työkaluista, joita käytämme usein käyttäjän lomakkeen työkaluna, on “ComboBox”.

Top 2 tapaa luoda VBA ComboBox

Voit ladata tämän VBA Combo Box Excel -mallin täältä - VBA Combo Box Excel -malli

# 1 - Suoran koodauksen käyttö

Ensin näemme, kuinka Combo Boxia käytetään laskentataulukon kanssa. Avaa mikä tahansa Excel-työkirjan laskentataulukko, siirry Kehittäjä-välilehteen ja tämän välilehden alla on työkalu nimeltä "Lisää". Napsauta tätä ja tämän alla meillä on kaksi vaihtoehtoa: Active X Controls & Form Controls in Excel.

Valitse "Active X Controls" -kohdasta "Combo Box".

Nyt voit piirtää tämän objektin mille tahansa laskentataulukolle.

Napsauta hiiren kakkospainikkeella yhdistelmäruutua ja valitse Ominaisuudet-vaihtoehto.

Kun valitset ominaisuuksia, se avaa valtavan luettelon yhdistelmäruudun ominaisuuksista.

Tälle yhdistelmäruudulle annamme luettelon osastojen nimistä, joten vaihda yhdistelmäruudun  nimiominaisuudeksi DeptComboBox .

Nyt tähän yhdistelmäruutuun viitataan nimellä "DeptComboBox" . Meidän on annettava ennalta määritetyt osastojen nimet, joten tässä minulla on luettelo osastojen nimistä.

Nyt meidän on lisättävä nämä arvot yhdistelmäruudun luetteloon, voimme tehdä tämän kahdella tavalla, koodaamalla tai nimenhallinnan kautta.

Kaksoisnapsauta Comboboxia ja se vie sinut VBA-makromenettelyyn.

Mutta meidän täytyy nähdä nämä osastojen nimet, kun työkirja avautuu, joten kaksoisnapsauta "ThisWorkbook".

Valitse avattavasta luettelosta ”Työkirja”.

Valitse vaihtoehdoista "Avaa".

Nyt se luo alla olevan kaltaisen aihion.

Kirjoita tämän makron sisälle alla oleva koodi.

Koodi:

 Yksityinen alityökirja_Avaa () laskentataulukoilla ("Sheet1"). DeptComboBox .AddItem "Finance" .AddItem "Marketing" .AddItem "Merchandising" .AddItem "Operations" .AddItem "Audit" .AddItem "Client Service" loppuu loppuun Sub Sub 

Ok, tallenna ja sulje nyt työkirja, kun avaat työkirjan uudelleen, voimme nähdä siinä osastojen nimet.

# 2 - Käyttämällä UserFormia

Toinen tapa lisätä arvoja ComboBoxiin on käyttää käyttäjän muotoa. Anna ensin soluille nimi "osasto".

Siirry Visual Basic Editoriin ja lisää käyttäjän lomake INSERT-asetuksesta.

Nyt uusi käyttäjälomake on luotu.

Käyttäjälomakkeen vieressä näemme "Toolbox" tästä työkaluryhmästä, johon voimme lisätä "Combo Box".

Nyt yhdistelmäruutu on upotettu käyttäjälomakkeeseen. Avaa ominaisuusvaihtoehto tässä menetelmässä valitsemalla yhdistelmäruutu ja avaamalla ominaisuusikkuna painamalla F4-näppäintä.

Vieritä ominaisuudet-välilehteä alaspäin ja valitse "Rivin lähde".

Syötä tälle ”rivilähteelle” nimi, jonka olimme antaneet osaston nimen soluille.

Nyt tässä yhdistelmäruudussa on viite nimelle "osasto" .

Suorita nyt käyttäjälomake ajaa-painikkeella.

Nyt voimme nähdä luettelon osastojen nimistä käyttäjän lomakkeen yhdistelmäruudussa.

Käytännössä yhdistelmäruutuun, tekstiruutuun ja moniin muihin työkaluihin liittyvä käyttäjälomake. Luomme yksinkertaisen tietojen syöttölomakkeen, jossa on tekstiruutu ja yhdistelmäruutu.

Luo alla olevan kaltainen käyttäjälomake.

Luo kaksi komentopainiketta.

Kaksoisnapsauta "Lähetä" -painiketta. Se avautuu makron alapuolelle.

Lisää tämän makron sisälle koodi.

Koodi:

 Private Sub CommandButton1_Click () Dim LR As Long LR = Cells (Rows.Count, 1) .End (xlUp) .Rivi + 1 solua (LR, 1) .Arvo = TextBox1.Arvo solut (LR, 2) .Arvo = ComboBox1 Arvo End Sub 

Kaksoisnapsauta nyt "PERUUTA" -painiketta ja lisää alla oleva koodi.

Luo nyt laskentataulukossa alla olevan kaltainen malli.

Suorita nyt käyttäjälomake ja se avautuu näin.

Kirjoita työntekijän nimi ja valitse osaston nimi yhdistelmäluettelosta.

Napsauta Lähetä-painiketta ja näe taika.

Saimme arvot syötettyyn taulukkomuotoon.

Muistettavaa

  • COMBO BOXilla on myös omat ominaisuutensa.
  • Arvojen lisääminen luetteloon tulee kahdella tavalla: yksi on koodaus ja toinen on alueen nimen viite.
  • COMBO BOX on yleensä osa käyttäjälomaketta.

$config[zx-auto] not found$config[zx-overlay] not found