VBA InputBox - Iegūstiet ievadi no lietotāja makro - VBA koda piemēri

Šī apmācība parādīs, kā iegūt informāciju no lietotāja, izmantojot VBA ievades lodziņu.

The VBA ievades kaste ļauj mums pieprasīt lietotājam ievadīt informāciju. Pēc tam informāciju var izmantot mūsu VBA kodā vai Excel darblapā.

VBA ievades kaste ar mainīgo

Mēs varam deklarēt mainīgo mūsu VBA kodā, kas pēc tam saglabā informāciju, kas tiek ievadīta ievades lodziņā. Pēc tam mēs varam izmantot šo mainīgo savā kodā.

Atkarībā no informācijas veida, kuru vēlamies atgriezt no ievades lodziņa, mēs varam deklarēt konkrētu mainīgā veidu, lai vai nu atgrieztu tekstu (virkne vai mainīgais variants), vai arī atgrieztu skaitli (vesels skaitlis, garš, dubults vai viens mainīgais).

Stīgu mainīgais ar ievades lodziņu

Lūk, kā jūs varat izveidot InputBox, kur dati tiek atgriezti virknes mainīgajā.

123 Dim strInput kā virknestrInput = InputBox ("Šī ir mana InputBox", "MyInputTitle", "Ievadiet ievades tekstu ŠEIT")

Vispirms ņemiet vērā, ka mēs deklarējam mainīgo. Šim mainīgajam tiks piešķirta vērtība, kuru ievadīs lietotājs. Mēs izmantojām mainīgā tipa virkni, lai ievades lodziņš pieņemtu teksta virknes (kas ietver visas burtciparu rakstzīmes).

Mainīgais skaitlis ar ievades lodziņu

Ja deklarējat skaitļu mainīgo, ievades lodziņā jums būs jāievada tikai skaitlis.

12 Dim iInput kā vesels skaitlisiInput = InputBox ("Lūdzu, ievadiet numuru", "Izveidot rēķina numuru", 1)

Vispirms mēs deklarējam skaitļa mainīgo kā veselu skaitļa mainīgo. Pēc tam ievades lodziņā mēs varam ievietot arī noklusējuma vērtību 1.

Ja mēs skaitļa vietā ievadītu virkni un pēc tam noklikšķinātu uz Labi, mēs saņemtu kļūdas tipu, jo skaitļa mainīgais nepieņem virkni.

Iegūstiet informāciju no lietotāja

Šeit ir vēl viens piemērs, kurā tiek izmantotas populārākās InputBox funkcijas.

Šis kods veic trīs lietas:

1. Lūdz ievadi ar InputBox un piešķir to mainīgajam

2. Pārbauda ievadi, citādi iziet no apakš

3. Atgriež ievadīto ziņojumu lodziņā

12345678910111213 Public Sub MyInputBox ()Dim MyInput kā virkneMyInput = InputBox ("Šī ir mana InputBox", "MyInputTitle", "Ievadiet ievades tekstu ŠEIT")Ja MyInput = "Ievadiet ievades tekstu ŠEIT" Vai MyInput = "" TadIziet no apakšnodaļasBeigas JaMsgBox "MyInputBox teksts ir" & MyInputBeigu apakš

Ievades atgriešana Excel lapā

Ievadīto lodziņu ievadīto lodziņu varat atgriezt noteiktā Excel lapas šūnā.

1 Diapazons ("P1") = InputBox ("Lūdzu, ierakstiet savu vārdu", "Ievadiet vārdu", "Ievadiet vārdu ŠEIT")

Mēs varam arī atgriezt ievades datus Excel lapā, izmantojot mainīgo.

12345678910 Apakš Enter EnterNumber ()Par kļūdu Atsākt nākamoDim dblAmount As DoubledblAmount = InputBox ("Lūdzu, ievadiet nepieciešamo summu", "Ievadiet summu")Ja dblAmount 0 TadDiapazons ("A1") = dblAmountCitādiMsgBox "Jūs neievadījāt numuru!"Beigas JaBeigu apakš

Iepriekš minētajā piemērā mums jāievada skaitlis. Ja mēs ievadām skaitli, tad mainīgo dblAmount ievietos numuru Excel lapā šūnā A1. Tomēr, ja mēs neievadām skaitli, ziņojuma lodziņš mums pateiks, ka mēs neievadījām numuru un nekas netiks ievietots šūnā A1.

VBA InputBox izmantošana Access VBA

VBA ievades lodziņš programmā Access darbojas tieši tāpat kā programmā Excel, atgriežot lietotāja ievadīto ziņojumu lodziņa veidā.

Tomēr, ja vēlaties atgriezt datu bāzē lietotāja ievadīto informāciju, jums jāizmanto objekts Recordset, nevis diapazona objekts, kā tas tika izmantots programmā Excel.

1234567891011121314 Sub EnterInvoiceNumber ()Dim dbs kā datu bāzeIzmērs kā ierakstsIestatīt dbs = CurrentDbIestatiet rst = dbs.OpenRecordset ("tblMatters", dbOpenDynaset)Ar pirmo.Pievieno jaunu! InvNo = InputBox ("Lūdzu, ievadiet rēķina numuru", "Rēķina numura ģenerēšana", 1).AtjauninātBeigt arpirmais. AizvērtIestatīt pirmo: nekasSet dbs = NekasBeigu apakš

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave