VBA vezérlők Excelben: Űrlap és ActiveX

⚡ Okos összefoglaló

Az Excel VBA-vezérlői interaktív elemek, például gombok, jelölőnégyzetek és szövegdobozok, amelyek grafikus felhasználói felületet építenek. Ez az oldal ismerteti az űrlapvezérlőket, az ActiveX-vezérlőket, a két vezérlőcsalád különbségeit, valamint egy lépésről lépésre bemutatott ActiveX parancsgomb példát.

  • 🧩 Grafikus felhasználói felület (GUI) vezérlők: A gombok, kombinált listák, jelölőnégyzetek és feliratok alkotják azt a felületet, amellyel a felhasználó a munkalapon kapcsolatba lép.
  • 🗂️ Űrlapvezérlők: Egyszerű vezérlők, amelyek egyetlen hozzárendelt makrót futtatnak, és mindkettőn működnek Windows és Mac Excel.
  • 🇧🇷 ActiveX-vezérlők: Gazdagabb vezérlők számos tulajdonsággal és eseménnyel, VBA-ban kódolva, elérhetők a következőn: Windows Csak Excelben.
  • 🔧 Előfeltétel: Engedélyezze a Fejlesztői menüszalagot, és mentse a fájlt makróbarát munkafüzetként a vezérlők hozzáadása előtt.
  • ▶ ️ ActiveX példa: Egy parancsgomb kinyomtatja a karakterláncot Guru99 VBA oktatóanyag az A1-től A10-ig terjedő cellatartományba kattintással.
  • 🖱️ Események: Az ActiveX-vezérlők dedikált alprogramokon keresztül reagálnak olyan eseményekre, mint a Kattintás, Módosítás és GotFocus.

VBA vezérlők az Excelben

VBA-vezérlők: VBA-űrlapvezérlők és ActiveX-vezérlők az Excelben

VBA Form/GUI vezérlők az Excelben

A GUI a grafikus felhasználói felület rövidítése. A GUI a program azon része, amellyel a felhasználó interakcióba lép. A GUI vezérlőkből áll. Ezek az Excel VBA-vezérlők űrlapon használhatók. Az alábbi táblázat a leggyakrabban használt GUI VBA vezérlőket mutatja be.

S / N Vezérlés Leírás
1 parancs Kód végrehajtására szolgál
2 Combo Box Legördülő lista bemutatására szolgál a felhasználóknak
3 Jelölje be Box Igaz vagy hamis értékekhez használják. Egyszerre több jelölőnégyzetnek is lehet valódi értéke.
4 Lista Box Egy egyszerű lista bemutatására szolgál a felhasználóknak
5 szöveg Box A felhasználói bevitel elfogadására szolgál
6 Görgetősáv A navigációs célú görgetősáv biztosítására szolgál.
7 Forgatás gomb Számértékek növelésére vagy csökkentésére szolgál a pörgetőgombban megjelenő fel vagy le nyilakra kattintva
8 Opció gomb Igaz vagy hamis értékekhez használják. Egyszerre csak egy opciógombnak lehet valódi értéke.
9 Címke Statikus szöveg megjelenítésére szolgál a felhasználó számára
10 Kép Képek megjelenítésére szolgál
11 Toggle gomb Gomb, amelynek lenyomott és lenyomott állapotai vannak.

A VBA GUI vezérlőben

  1. Kattintson a fejlesztő fülre
  2. Kattintson a Beszúrás legördülő menü gombra

A következő legördülő panel jelenik meg

VBA Form/GUI vezérlők az Excelben

Ha az egeret a VBA űrlapvezérlők fölé viszi, a vezérlő neve az alábbiak szerint jelenik meg

VBA Form/GUI vezérlők az Excelben

GUI vezérlők hozzáadása egy táblázathoz

Most hozzáadunk egy parancsgombot a munkafüzetünkhöz, ehhez muszáj

  • Kattintson a Beszúrás legördülő menüre
  • Kattintson a Parancsgombra (ActiveX Control) a fenti képen látható módon
  • Húzza és rajzolja meg a gombot a lapon

GUI vezérlők hozzáadása egy táblázathoz

GUI vezérlési tulajdonságok beállítása

A gomb feliratát most valami leíróbbra állítjuk

A GUI vezérlés tulajdonságainak beállítása

  1. Kattintson a jobb gombbal az éppen létrehozott egyenlő gombra
  2. Válassza ki a tulajdonságok menüt
  3. A következő tulajdonság ablakot fogja látni

A GUI vezérlés tulajdonságainak beállítása

  • Állítsa be a name tulajdonságot btnButton értékre. A név tulajdonság a vezérlő azonosítására szolgál a kódablakban. A btn a gomb előtagja.
  • Állítsa a Caption tulajdonságot Click Me értékre. A felirattulajdonság szövege az, amit a felhasználók a gombon látnak.

Zárja be az ablakot, ha végzett.

A következő eredményeket kapja.

A GUI vezérlés tulajdonságainak beállítása

Különbség az űrlapvezérlők és az ActiveX-vezérlők között

Az Excel kétféle vezérlőelemet kínál, és a megfelelő kiválasztása egyszerűvé teszi a projekteket. Az űrlapvezérlők az Excelbe vannak beépítve, és egyetlen hozzárendelt makrót futtatnak, míg az ActiveX-vezérlők programozható objektumok, amelyek számos eseményre reagálnak VBA-kódon keresztül. Az alábbi táblázat összehasonlítja a kettőt.

Jellemző Űrlapvezérlők ActiveX-vezérlők
felépítés Egyszerű; rendeljen hozzá egy makrót a vezérlőhöz VBA eseménykód szükséges a válaszadáshoz
Ingatlanok Korlátozott lehetőségek Kiterjedt, beleértve a betűtípust, a színt és a viselkedést
Események Egyetlen kattintásra végrehajtható művelet Sok esemény, például a Click, Change és a GotFocus
Kompatibilitás Működik Windows és Mac Excel Működik Windows Csak Excelben
Legmegfelelőbb Gyors, egyszerű munkalapfeladatok Interaktív és dinamikus felhasználói űrlapok

Röviden, használjon űrlapvezérlőt, ha egyetlen makró elegendő, és válasszon ActiveX-vezérlőt, ha a felületnek gazdag tulajdonságokra van szüksége, vagy több felhasználói eseményre kell reagálnia.

Előfeltétel

Az ActiveX-példa létrehozása előtt készítse elő a munkafüzetet úgy, hogy a vezérlők elérhetőek legyenek, és a makrók menthetők legyenek.

konfigurálása Microsoft Excel
Ahogy az előző oktatóanyagban láttuk, győződjön meg arról, hogy a szalagon lesz „Fejlesztő” ikon, ahogy az itt látható.

Előfeltétel

Most nevezze át az 1. lapot „VBA Operator” fájlt, ahogy az az alábbi képernyőképen látható. Mentse el a munkafüzetet egy makróbarát Excel munkafüzet (*.xlsm) fájlkiterjesztéssel. (lásd az alábbi képet)

Előfeltétel

Ezt követően kattintson a Mentés gombra.

Az ActiveX-vezérlő használata VBA-ban

Miután a munkafüzet elkészült, hozzáadhatunk egy működő ActiveX gombot. Az ActiveX vezérlőkről szóló Excel-szakaszban bemutatjuk, hogyan lehet a „commandclick” gombot VBA-ban beépíteni, és a gombbal programot futtatni.

Step 1) Ebben a lépésben kattintson a „gomb beszúrása” lehetőségre az Active X vezérlőben. Ezután válassza ki belőle a parancsgomb opciót.

ActiveX-vezérlő használata VBA-ban

Step 2) A „clickcommandbutton1” beillesztéséhez húzza az egérmutatót az Excel munkalapra.

ActiveX-vezérlő használata VBA-ban

Step 3) Ezután kattintson a jobb gombbal a parancsgombra, és válassza a „Nézet” lehetőséget. Code".

ActiveX-vezérlő használata VBA-ban

Step 4) Ellenőrizze, hogy a megfelelő lapon van-e. Megnyílik egy kódszerkesztő. Írd be a kódodat.

  • A kódban A1-től A10-ig definiáltuk a tartományt.
  • Ez a tartomány határozza meg a cellaszámot az Excel munkalapon „A1-től A10-ig”.
  • Ezután definiáljuk a „karakterláncot”Guru99 VBA oktatóanyag” kódban
  • Tehát, amikor az Excelben a „parancsgombra” kattintasz, akkor a következőt kell kinyomtatnia:Guru99 VBA oktatóanyag” szöveget az „A1-től A10-ig” cellatartományba.

ActiveX-vezérlő használata VBA-ban

Step 5) A következő lépésben mentse a kódfájlt, majd lépjen ki a szerkesztőből. Az Excel fájlhoz való visszatéréshez kattintson az Excel munkalap ikonjára ActiveX-vezérlő használata VBA-ban a szélső bal oldalon.

ActiveX-vezérlő használata VBA-ban

Step 6) Az Excel munkalapon látni fogja, hogy a Tervezési mód fül be van kapcsolva. Győződjön meg arról, hogy „KI” van kapcsolva, különben a kód nem fog működni.

ActiveX-vezérlő használata VBA-ban

Step 7) Ha a tervezési mód ki van kapcsolva, nem lesz rajta zöld kiemelés. Most kattintson a parancs gombra.

ActiveX-vezérlő használata VBA-ban

Step 8) Kattintson a „CommandButton1” gombra. A következő jelenik meg: „Guru99 VBA oktatóanyag” szöveget az „A1-től A10-ig terjedő cellatartományba.

ActiveX-vezérlő használata VBA-ban

Töltse le a fenti kódot tartalmazó Excelt

Töltsd le a fenti Excelt Code

Gyakori ActiveX-vezérlőesemények VBA-ban

Egy ActiveX-vezérlő azért hatékony, mert reagál az eseményekre, amelyek a felhasználó által a vezérlőn végrehajtott műveletek. Minden esemény saját alprogramot futtat, így ugyanaz a gomb másképp viselkedhet attól függően, hogy mit tesz a felhasználó. A leggyakoribb eseményeket az alábbiakban soroljuk fel.

  • Kattints – lefuttatja a kódot, amikor a felhasználó a vezérlőre kattint, a fenti példában használt eseményre.
  • Változtat – akkor fut le, amikor egy vezérlőelem értéke megváltozik, például typing egy szövegmezőben vagy egy kombinált listaelem kiválasztásával.
  • GotFocus / LostFocus – akkor fut le, amikor a vezérlő fókuszba kerül vagy veszít, hasznos a bevitel validálásához.
  • KeyPress – akkor fut le, amikor a felhasználó megnyom egy billentyűt, miközben a vezérlő aktív.
  • Egérmozgás – akkor fut le, amikor az egérmutató a vezérlő fölé kerül.
  • Dupla kattintás – akkor fut le, amikor a felhasználó duplán kattint a vezérlőre.

Bármely eseményhez kód hozzáadásához kapcsolja be a Tervező módot, kattintson a jobb gombbal a vezérlőre, és válassza a Nézet lehetőséget. Code, és válassza ki az eseményt a kódablak tetején található legördülő listából.

GYIK

Egy űrlapvezérlő egyetlen makrót futtat, amelyet hozzárendelsz, és amelyen dolgozik. Windows és Macen. Az ActiveX-vezérlőket VBA-ban programozzák, számos tulajdonságot és eseményt tesznek elérhetővé, és elérhetők a következő gépeken: Windows Csak Excelben.

Az Űrlap és ActiveX vezérlők Beszúrás menüje a Fejlesztők menüszalagon található, amely alapértelmezés szerint rejtett. Engedélyezze a Fájl menü Beállítások menüpontjában, majd a Menüszalag testreszabása menüpontban, és jelölje be a Fejlesztők jelölőnégyzetet, így a vezérlők és a VBA-szerkesztő elérhetővé válnak.

A gomb valószínűleg még Tervező módban van, amit zöld kiemelés jelez a Fejlesztők lapon. Kapcsolja ki a Tervező módot, hogy a vezérlő lefuttassa az eseménykódját. A munkafüzetet makróbarát .xlsm fájlként is menteni kell.

Igen. Az olyan mesterséges intelligencia asszisztensek, mint a Copilot, egy egyszerű leírásból írják a Kattintás vagy módosítás alprogramot, például a gomb megnyomásakor törlik a tartományt. A fejlesztő beilleszti ezt a vezérlő kódablakába, és teszteli.

Igen. Írd le a szükséges bemenetet, és egy MI-asszisztens javasol egy megfelelő vezérlőt, például egy kombinált listát egy fix listához vagy egy jelölőnégyzetet egy igen vagy nem értékhez, és elmagyarázza, hogyan kell beállítani a kulcstulajdonságait.

Foglald össze ezt a bejegyzést a következőképpen: