Üdvözlünk A Prog.Hu-N! - Prog.Hu

14. Kattintson duplán az OK gombra. 15. Adja hozzá a következő kódsorokat: Dim emptyRow As Long tivate emptyRow = (Range("A:A")) + 1 Cells(emptyRow, 1) = Cells(emptyRow, 2) = If = True Then Cells(emptyRow, 3) = "Male" Else Cells(emptyRow, 3) = "Female" Cells(emptyRow, 4) = Unload Me Magyarázat: először aktiváljuk a Sheet1-et. Ezután meghatározzuk az emptyRow értéket. Az emptyRow változó az első üres sor, amely minden rekord hozzáadásakor növekszik. Ezt követően az Userform-ból az adatokat az emptyRow konkrét oszlopaira továbbítjuk. Végül lezárjuk a Userform-ot. 16. Lépjen ki a Visual Basic Editorból, írja be az alább látható címkéket az 1. sorba, és próbálja meg a Userform-ot. Eredmény:

:) A fentebb lévő egy vagy több ActiveX vezérlő hozzáadása és azok lehetőségeinek módosítása Esetleg a "sima" makrók kombinálása az ActiveX vezérlős kódokkal Példa: Készítsünk űrlapot, ahol megadjuk a darabszámot, az egységárat és gombnyomásra megkapjuk a bevételt. Vagyis: 1. Excelben: ALT + F11-gyel belépünk a VBA szerkesztőjébe 2. Jobb klikk a fájl nevén -> Insert -> UserForm 3. A darabszámnak létrehozunk egy szövegdobozt (TextBox): a "ToolBox"-ban megkeressük a TextBox ikonját és a bal egérgombot lenyomva tartva áthúzzuk az űrlapra (fogd és vidd azaz drag and drop módszer): 4. A TextBox ki van jelölve. A Properties-nél új nevet adunk neki (Darabszam), majd Enter: 5. Még egy TextBox-ot hozzáadunk: 3-as lépés megismétlése 6. 4-es lépés megismétlése, csak ezúttal a név Egysegar lesz, majd Enter: 7. ParancsGomb (CommandButton) hozzáadása: megkeressük az ikonját és a bal egérgombot lenyomva tartva áthúzzuk az űrlapra: 8. CommandButton ki van jelölve: A: Name megváltoztatása "Bevetel"-re B: Caption átírása "Bevétel számolása"-ra – ez fog megjelenni magán a gombon is, mint felirat 9.

Két típusa van: 1. VBA InputBox: Mint a neve is mutatja, ez a VBA függvénye. Paraméterei, melyeknél csak az első (prompt) megadása kötelező: A beírt érték kimenete szöveg lesz, ezért a fenti kép végén lévő "string". Példa, mely az általunk beírt nevet az aktív munkalap A1-es cellájába teszi: Sub VBA_InputBox () Dim Nev As String Nev = InputBox ( "Mi a keresztneved? ", "Név megadása", "Név megadása") Range ( "A1"). Value = Nev End Sub Makró futtatásakor: A: Üzenet B: Cím C: Alapértelmezett érték, melyet már átírtam a nevemre D: OK gomb megnyomása után az A1-es cella tartalma 2. putBox: Ez már az Excel függvénye és többet tud mint az előző, ezért gyakoribb a használata. Paraméterei, melyeknél szintén csak az első (prompt) megadása kötelező: Itt az utolsó, "Type" paraméter különösen fontos: megadhatjuk, milyen adattípust szeretnénk visszakapni (szám, szöveg, tartomány). Pl. a 8-as típusnál mi választhatunk ki egy tartományt a makró futása közben, majd a kijelölt tartományban végezhetünk műveleteket: Sub ApplicationInpuBox () Dim Tart As Range Set Tart = Application.

6. Nyissa meg a Visual Basic Editor alkalmazást. 7. A Project Explorerben kattintson jobb gombbal a UserForm1-re, majd kattintson a View Code (Kód megtekintése) parancsra. 8. A bal oldali legördülő listáról válassza a Userform (Felhasználóformátum) lehetőséget. Válassza az Initialize lehetőséget a jobb legördülő listából. 9. Adja hozzá a következő kódsorokat: Private Sub UserForm_Initialize() With ListBox1. AddItem "Mountains". AddItem "Sunset". AddItem "Beach". AddItem "Winter" End With Magyarázat: a 2. oldalon lévő listakód kitöltése. Most létrehoztuk a Userform első részét. Bár már szépnek tűnik, semmi sem fog történni, amikor kiválasztunk egy elemet a listából vagy amikor az OK gombra kattintunk. 10. Töltse le a képeket (az oldal jobb oldalán), és adja hozzá a "C: teszt" 11. A Project Explorer programban kattintson duplán a UserForm1-re. 12. Kattintson duplán a listán. 13. Adja hozzá a következő kódsorokat: Private Sub ListBox1_Click() If stIndex = 0 Then Image1. Picture = LoadPicture("") End If If stIndex = 1 Then If stIndex = 2 Then If stIndex = 3 Then Magyarázat: ezek a kódsorok a listán szereplő elemtől függően betöltenek egy képet.

Inspiráció (angol nyelven): Remélem hasznos volt a poszt. Kérdésed, észrevételed van? Hívj vagy dobj egy emailt az -ra.

Az alábbiakban egy Excel VBA programot fogunk megnézni, amely több oldalt tartalmazó Userformot hoz létre. Ez a felhasználói formátum is tartalmaz képeket. A többoldalas vezérlés két oldalt tartalmaz. Az 1. oldalon a felhasználó kitölti személyes adatait. A 2. oldalon a felhasználó jelezheti, hogy melyik festményt szereti legjobban. A Userform létrehozásához hajtsa végre a következő lépéseket. 1. Nyissa meg a Visual Basic Editor alkalmazást. Ha a Project Explorer nem látható, kattintson a Nézet, a Project Explorer elemre. 2. Kattintson a Beszúrás, Felhasználóformátum elemre. Ha az Eszköztár nem jelenik meg automatikusan, kattintson a Nézet, Eszköztár elemre. A képernyő beállítása az alábbiak szerint történik. 3. Adja hozzá a többoldalas vezérlőt, a címkéket, a szövegdobozokat (először a tetején, az első alatti második), a keret, az opciógombokat (balra, a második jobb oldalon), a listán, a képvezérlő és a parancsgombot. Miután ez befejeződött, az eredménynek összhangban kell lennie a korábban bemutatott Userform üres verziójával.