VBA InputBox - Pridobite vnos od uporabnika v makru - Primeri kode VBA

Ta vadnica bo pokazala, kako od uporabnika vnesti vnosno polje VBA.

The VBA polje za vnos nam omogoča, da uporabnika pozovemo, da vnese podatke. Podatke lahko nato uporabite v naši kodi VBA ali v Excelovem delovnem listu.

Vhodno polje VBA s spremenljivko

V kodi VBA lahko razglasimo spremenljivko, ki nato shrani podatke, ki so vneseni v polje za vnos. To spremenljivko lahko nato uporabimo v kodi.

Odvisno od vrste informacij, ki jih želimo vrniti iz vnosnega polja, lahko razglasimo določeno vrsto spremenljivke tako, da vrne besedilo (spremenljivko niza ali variante) ali pa vrne številko (celo število, dolgo, dvojno ali enojno spremenljivko).

Spremenljivka niza z vnosnim poljem

Tukaj je, kako lahko ustvarite InputBox, kjer se podatki vrnejo v spremenljivko niza.

123 Zatemni strInput kot nizstrInput = InputBox ("To je moj InputBox", "MyInputTitle", "Vnesite vnosno besedilo TUKAJ")

Najprej opazimo, da razglasimo spremenljivko. Tej spremenljivki bo dodeljena vrednost, ki jo vnese uporabnik. Uporabili smo spremenljivko tipa String, da je polje za vnos sprejelo besedilne nize (ki vključujejo vse alfanumerične znake).

Številčna spremenljivka z vnosnim poljem

Če razglasite spremenljivko številke, boste morali številko vnesti samo v polje za vnos.

12 Zatemni iInput kot celo številoiInput = InputBox ("Prosimo, vnesite številko", "Ustvari številko računa", 1)

Najprej razglasimo spremenljivko številko kot spremenljivko celega števila. Nato lahko vnesemo tudi privzeto vrednost 1 v polje za vnos.

Če bi namesto številke vnesli niz in nato kliknili V redu, bi dobili napako pri neskladju vrste, saj spremenljivka števila ne sprejema niza.

Pridobite vnos od uporabnika

Tu je še en primer uporabe najbolj priljubljenih funkcij polja InputBox.

Naslednja koda naredi tri stvari:

1. Zahteva vnos z InputBoxom in ga dodeli spremenljivki

2. Preveri vnos, v nasprotnem primeru zapusti podpogon

3. Vrne vnos v polju za sporočila

12345678910111213 Javni podvmesnik MyInputBox ()Zatemni MyInput As StringMyInput = InputBox ("To je moj InputBox", "MyInputTitle", "Vnesite vnosno besedilo TUKAJ")Če MyInput = "Vnesite vnosno besedilo TUKAJ" Ali MyInput = "" PotemZapri podKonec ČeMsgBox "Besedilo iz MyInputBox je" & MyInputEnd Sub

Vrnitev vnosa v Excelov list

Vnos, ki ga vnesete v polje za vnos, lahko vrnete v določeno celico v Excelovem listu.

1 Obseg ("P1") = InputBox ("Vnesite svoje ime", "Vnesite ime", "Vnesite ime TUKAJ")

Vhodne podatke lahko vrnemo tudi v Excelov list s spremenljivko.

12345678910 Sub EnterNumber ()On Napaka Nadaljuj NaprejZatemni dblOznači kot dvojnodblAmount = InputBox ("Vnesite zahtevani znesek", "Vnesite znesek")Če je dblAmount 0, potemObseg ("A1") = dblAmountSicer paMsgBox "Niste vnesli številke!"Konec ČeEnd Sub

V zgornjem primeru moramo vnesti številko. Če vnesemo številko, potem spremenljivko dblAmount bo vnesel številko v Excelov list na celico A1. Če pa ne vnesemo številke, nam bo polje s sporočilom sporočilo, da številke nismo vnesli in v celico A1 ne bo nič.

Uporaba VBA InputBox v Access VBA

Vnosno polje VBA deluje v programu Access na enak način kot v Excelu, ko uporabniški vnos vrne v obliki polja s sporočilom.

Če pa želite vrniti uporabniški vnos v bazo podatkov, bi morali uporabiti objekt Recordset namesto predmeta Range, kot se uporablja v Excelu.

1234567891011121314 Sub EnterInvoiceNumber ()Zatemni dbs kot bazo podatkovZatemni najprej kot zapis zapisaNastavite dbs = CurrentDbNastavi rst = dbs.OpenRecordset ("tblMatters", dbOpenDynaset)S prvim.Dodaj novo! InvNo = InputBox ("Vnesite številko računa", "GENERACIJA ŠTEVILKE RAČUNA", 1).NadgradnjaKončaj snajprej ZapriNastavi rst = NičNastavi dbs = ničEnd Sub

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave