VBA-komponentit Excelissä: Lomake ja ActiveX

⚡ Älykäs yhteenveto

Excelin VBA-komponentit ovat graafisen käyttöliittymän vuorovaikutteisia elementtejä, kuten painikkeita, valintaruutuja ja tekstiruutuja. Tällä sivulla selitetään lomakekomponentit, ActiveX-komponentit, miten nämä kaksi komponenttiryhmää eroavat toisistaan, ja annetaan vaiheittainen esimerkki ActiveX-komentopainikkeesta.

  • 🧩 Käyttöliittymän ohjaimet: Painikkeet, yhdistelmäruudut, valintaruudut ja otsikot muodostavat käyttöliittymän, jonka kanssa käyttäjä on vuorovaikutuksessa laskentataulukossa.
  • 🗂️ Lomakkeen ohjausobjektit: Yksinkertaiset ohjausobjektit, jotka suorittavat yhden määritetyn makron ja toimivat molemmilla Windows ja Mac Excelillä.
  • ⚙️ ActiveX-komponentit: Runsaammat ohjausobjektit useilla ominaisuuksilla ja tapahtumilla, koodattu VBA:lla, saatavilla Windows Vain Excelissä.
  • 🔧 Edellytys: Ota käyttöön kehittäjävalintanauha ja tallenna tiedosto makroita tukevana työkirjana ennen ohjausobjektien lisäämistä.
  • ▶ ️ ActiveX-esimerkki: Komentopainike tulostaa merkkijonon Guru99 VBA-opetusohjelma solualueelle A1–A10 napsautuksella.
  • 🖱️ Tapahtumat: ActiveX-komponentit reagoivat tapahtumiin, kuten Click, Change ja GotFocus, omien aliohjelmiensa kautta.

VBA-ohjausobjektit Excelissä

VBA-ohjaimet: VBA-lomakehallinta ja ActiveX-komponentit Excelissä

VBA Form/GUI -ohjaimet Excelissä

GUI on lyhenne sanoista Graphical User Interface. GUI on osa ohjelmaa, jonka kanssa käyttäjä on vuorovaikutuksessa. GUI koostuu säätimistä. Näitä Excel VBA -säätimiä voidaan käyttää lomakkeessa. Seuraavassa taulukossa on joitakin yleisimmin käytettyjä GUI VBA -ohjaimia.

S / N Valvonta: Tuotetiedot
1 Komento Käytetään koodin suorittamiseen
2 Combo Box Käytetään avattavan luettelon esittämiseen käyttäjille
3 Tarkistaa Box Käytetään oikeille tai väärille arvoille. Useilla valintaruuduilla voi olla todellinen arvo samanaikaisesti.
4 Lista Box Käytetään yksinkertaisen luettelon esittämiseen käyttäjille
5 teksti Box Käytetään hyväksymään käyttäjän syötteet
6 Vierityspalkki Käytetään tarjoamaan vierityspalkki navigointitarkoituksiin.
7 Linkouspainike Käytetään numeeristen arvojen lisäämiseen tai vähentämiseen napsauttamalla pyörityspainikkeessa näkyviä ylös- tai alas-nuolia
8 Asetuspainike Käytetään oikeille tai väärille arvoille. Vain yhdellä vaihtoehtopainikkeella voi olla todellinen arvo kerrallaan.
9 Merkki Käytetään näyttämään staattista tekstiä käyttäjälle
10 Kuva Käytetään kuvien näyttämiseen
11 Toggle-painike Painike, jossa on painettu ja painamatta jätetyt tilat.

VBA GUI -ohjaimessa

  1. Napsauta kehittäjä-välilehteä
  2. Napsauta Lisää pudotusvalikko -painiketta

Saat seuraavan avattavan paneelin

VBA Form/GUI -ohjaimet Excelissä

Jos viet hiiren osoittimen VBA-lomakkeen ohjausobjektien päälle, ohjausobjektin nimi tulee näkyviin alla olevan kuvan mukaisesti

VBA Form/GUI -ohjaimet Excelissä

GUI-ohjaimien lisääminen laskentataulukkoon

Lisäämme nyt komentopainikkeen työkirjaamme, sitä varten meidän on

  • Napsauta avattavaa Lisää-valikkoa
  • Napsauta komentopainiketta (ActiveX Control) yllä olevan kuvan mukaisesti
  • Vedä ja piirrä painike arkille

GUI-ohjaimien lisääminen laskentataulukkoon

GUI-ohjausominaisuuksien asettaminen

Asetamme nyt painikkeen kuvatekstiksi jotain kuvaavampaa

GUI-ohjausominaisuuksien asettaminen

  1. Napsauta hiiren kakkospainikkeella juuri luomaamme yhtäläisyyspainiketta
  2. Valitse ominaisuusvalikko
  3. Saat seuraavan ominaisuusikkunan

GUI-ohjausominaisuuksien asettaminen

  • Aseta nimiominaisuuden arvoksi btnButton. Nimiominaisuutta käytetään ohjausobjektin tunnistamiseen koodiikkunassa. btn on painikkeen etuliite.
  • Aseta Otsikko-ominaisuuden arvoksi Click Me. Tekstitysominaisuuden teksti on se, mitä käyttäjät näkevät painikkeessa.

Sulje ikkuna, kun olet valmis.

Saat seuraavat tulokset.

GUI-ohjausominaisuuksien asettaminen

Ero lomakeohjausobjektien ja ActiveX-komponenttien välillä

Excel tarjoaa kaksi ohjausobjektien perhettä, ja oikean valitseminen pitää projektin yksinkertaisena. Lomakeohjausobjektit ovat sisäänrakennettuja Exceliin ja suorittavat yhden määritetyn makron, kun taas ActiveX-komponentit ovat ohjelmoitavia objekteja, jotka reagoivat useisiin tapahtumiin VBA-koodin kautta. Alla olevassa taulukossa vertaillaan näitä kahta.

Ominaisuus Lomakkeen hallinta ActiveX-komponentit
Perustaa Yksinkertainen; määritä yksi makro ohjausobjektille Vaatii VBA-tapahtumakoodin vastaamiseen
Kiinteistöt Rajoitettu valikoima vaihtoehtoja Laaja, mukaan lukien fontti, väri ja toiminta
Tapahtumat Yksittäinen toiminto napsautuksella Monet tapahtumat, kuten Click, Change ja GotFocus
Yhteensopivuus Toimii Windows ja Mac Excel Toimii Windows Vain Excelissä
Sopii parhaiten Nopeita ja yksinkertaisia ​​laskentataulukon tehtäviä Interaktiiviset ja dynaamiset käyttäjälomakkeet

Lyhyesti sanottuna, käytä lomakekomponenttia, kun yksi makro riittää, ja valitse ActiveX-komponentti, kun käyttöliittymä tarvitsee monipuolisia ominaisuuksia tai sen on reagoitava useisiin käyttäjätapahtumiin.

Edellytys

Ennen ActiveX-esimerkin luomista valmistele työkirja niin, että ohjausobjektit ovat käytettävissä ja makrot voidaan tallentaa.

Configure Microsoft kunnostautua
Kuten edellisessä opetusohjelmassa näemme, varmista, että nauhassasi on Kehittäjä-kuvake, kuten tässä näkyy.

Edellytys

Nimeä nyt taulukko1 uudelleen nimellä "VBA Operator”, kuten alla olevassa kuvakaappauksessa näkyy. Tallenna työkirja Excel-työkirjana (*.xlsm), jonka tiedostotunniste on makroja tukeva (*.xlsm). (katso alla oleva kuva)

Edellytys

Napsauta sen jälkeen Tallenna-painiketta.

ActiveX-komponentin käyttäminen VBA:ssa

Kun työkirja on valmis, voimme lisätä toimivan ActiveX-painikkeen. Tässä ActiveX-komponentteja Excelissä käsittelevässä osiossa näemme, miten VBA:ssa voidaan sisällyttää 'commandclick'-painike ja suorittaa ohjelma painikkeen avulla.

Vaihe 1) Napsauta tässä vaiheessa vaihtoehtoa "Lisää painike" Active X -ohjaimesta. Valitse sitten komentopainikevaihtoehto siitä.

Käytä ActiveX-komponenttia VBA:ssa

Vaihe 2) Lisää "clickcommandbutton1" vetämällä hiiren osoitin Excel-arkkiin.

Käytä ActiveX-komponenttia VBA:ssa

Vaihe 3) Napsauta sitten komentopainiketta hiiren kakkospainikkeella ja valitse vaihtoehto "Näytä" Code".

Käytä ActiveX-komponenttia VBA:ssa

Vaihe 4) Tarkista, että olet oikealla arkilla. Koodieditori avautuu. Anna koodi.

  • Koodissa määritimme alueen A1 - A10.
  • Tämä alue määrittää Excel-taulukon solunumeron "A1 - A10".
  • Seuraavaksi määrittelemme merkkijonon "Guru99 VBA-opetusohjelma koodissa
  • Joten kun napsautat Excelissä "komentopainiketta", sen pitäisi tulostaa "Guru99 VBA-opetusohjelma” solualueella ”A1–A10”.

Käytä ActiveX-komponenttia VBA:ssa

Vaihe 5) Tallenna seuraavassa vaiheessa kooditiedosto ja poistu sitten editorista. Palataksesi Excel-tiedostoon napsauta Excel-taulukkokuvaketta Käytä ActiveX-komponenttia VBA:ssa äärivasemmalla.

Käytä ActiveX-komponenttia VBA:ssa

Vaihe 6) Excel-taulukossa näet Suunnittelutila-välilehden olevan päällä. Varmista, että se on "OFF" tai muuten koodisi ei toimi.

Käytä ActiveX-komponenttia VBA:ssa

Vaihe 7) Kun suunnittelutila on pois päältä, siinä ei ole vihreää korostusta. Nyt voit napsauttaa komentopainiketta.

Käytä ActiveX-komponenttia VBA:ssa

Vaihe 8) Napsauta “CommandButton1”. Se tulostaa “Guru99 VBA-opetusohjelma” solualueelle ”A1–A10”.

Käytä ActiveX-komponenttia VBA:ssa

Lataa Excel, joka sisältää yllä olevan koodin

Lataa yllä oleva Excel-tiedosto Code

Yleisiä ActiveX-komponenttien tapahtumia VBA:ssa

ActiveX-komponentti on tehokas, koska se reagoi tapahtumiin eli käyttäjän komponentille suorittamiin toimiin. Jokainen tapahtuma suorittaa oman aliohjelmansa, joten sama painike voi toimia eri tavalla käyttäjän toimista riippuen. Yleisimmät tapahtumat on lueteltu alla.

  • Napauta – suorittaa koodin, kun käyttäjä napsauttaa ohjausobjektia, yllä olevassa esimerkissä käytettyä tapahtumaa.
  • Muutos – suoritetaan, kun ohjausobjektin arvo muuttuu, kuten typing tekstiruudussa tai valitsemalla yhdistelmäruudun kohteen.
  • GotFocus / LostFocus – suoritetaan, kun ohjausobjekti saavuttaa tai menettää kohdistuksen, hyödyllinen syötteen validoinnissa.
  • Näppäin – käynnistyy, kun käyttäjä painaa näppäintä ohjauksen ollessa aktiivinen.
  • MouseShield – käynnistyy, kun hiiren osoitin siirtyy ohjausobjektin päälle.
  • Tuplaklikkaus – käynnistyy, kun käyttäjä kaksoisnapsauttaa ohjausobjektia.

Jos haluat lisätä koodia mille tahansa tapahtumalle, vaihda suunnittelutilaan, napsauta ohjausobjektia hiiren kakkospainikkeella ja valitse Näytä Codeja valitse tapahtuma koodi-ikkunan yläreunassa olevasta avattavasta luettelosta.

UKK

Lomakeohjausobjekti suorittaa yhden sille määrittämäsi makron ja toimii sen mukaan. Windows ja Mac. ActiveX-komponentti ohjelmoidaan VBA:lla, se näyttää useita ominaisuuksia ja tapahtumia ja on käytettävissä Windows Vain Excelissä.

Lomakkeen ja ActiveX-komponenttien Lisää-valikko sijaitsee Kehittäjät-valintanauhassa, joka on oletusarvoisesti piilotettu. Ota se käyttöön valitsemalla Tiedosto, Asetukset, Mukauta valintanauhaa ja valitsemalla sitten Kehittäjät-vaihtoehdon, jotta komponentit ja VBA-editori tulevat saataville.

Painike on todennäköisesti edelleen suunnittelutilassa, mikä näkyy vihreänä korostuksena Kehitystyökalut-välilehdellä. Poista suunnittelutila käytöstä, jotta ohjausobjekti suorittaa tapahtumakoodinsa. Työkirja on myös tallennettava makroja tukevana .xlsm-tiedostona.

Kyllä. Tekoälyavustajat, kuten Copilot, kirjoittavat Klikkaa tai muuta -aliohjelman pelkästä kuvauksesta, esimerkiksi tyhjentävät alueen, kun painiketta painetaan. Kehittäjä liittää sen ohjausyksikön koodi-ikkunaan ja testaa sitä.

Kyllä. Kuvaile tarvitsemasi syöte, niin tekoälyavustaja ehdottaa sopivaa ohjausobjektia, kuten yhdistelmäruutua kiinteälle luettelolle tai valintaruutua kyllä- tai ei-arvolle, ja selittää, miten sen avainominaisuudet määritetään.

Tiivistä tämä viesti seuraavasti: