Läs om inmatningsrutan funktionen i Excel VBA som ett första steg för att skapa program med denna ingång verktyget . Den här funktionen ger en mjuk introduktion till att lära hur man programmerar VBA -program för hand eftersom det bara tar ett argument , men ändå utför den viktiga funktionen att ta emot indata . Överväg lära MsgBox funktion tillsammans med Input Box , eftersom dess roll , visar utdata för användare att se , är motsvarigheten till inmatningsrutan funktionen . Syfte
inmatningsrutan Funktionen uppmanar en användare för inmatning och tar emot den ingången . Till exempel kan en Input Box uppmana användaren att ange åldern på en person , som ditt program kan lagra i en tabell som heter " Birthday sändlista " på ett Excel-ark .
Argument
Input Box tar flera argument , men du behöver bara förse det med en - texten som uppmanar användaren att mata in data . Valfria argument inkluderar " Titel ", som visas i inmatningsrutan namnlist . Den " Default " argumentet är värdet Input Box kommer att återvända till ditt program om användaren trycker " Enter " utan att ange ett värde . Du kan placera Input Box på en viss plats på skärmen genom att ange värden för " xpos " och " ypos " argument .
Return Value
Input Box returnerar en sträng värde till ditt program , vilket oftast innebär att du måste deklarera en variabel för att få funktionens returvärde . Denna förklaring kan ta en av två former . Den första anger inte en viss typ av värde . Till exempel kan du skriva " Dim returnvalue . " Eller så kan du ange strängvariabeln typ med en förklaring som " Dim returnvalue som sträng . " I allmänhet använder mer specifika skriva så VBA kan fånga typ - relaterade fel , som när programmet försöker tilldela ett nummer till en sträng variabel .
Sample Program
Prova ett urval program som integrerar Input Box med Excel . Klicka på " Visual Basic " -knappen i Excel fliken Utvecklare för att öppna VBA-programmering miljö . Kopiera följande kod :
Public Sub getEmailAdr ( ) katalog
Dim str_email As String
Do While ( InStr ( str_email , " @ " ) = 0 ) katalog
str_email = InputBox ( " Ange en giltig e-postadress . " ) katalog
Loop
Range ( " A1 " ) = str_email
End Sub
klistra in koden i miljön fönster , kör sedan programmet genom att trycka på " F5 ". Detta program uppmanar användaren för inmatning, utför en enkel felkontroll , sedan installeras in ingångsvärde i ett kalkylblad cell om det inmatade värdet passerar felkontrollen . Om den inte gör det , fortsätter programmet att be användaren rätt ingång .
Alternativ och fördelar
Input Box är bara ett av flera sätt att få användaren inmatning i Excel . Du kan istället använda ett kalkylblad eller en textruta kontroll för att få input . Eftersom Input Box accepterar textinmatning , det är inte det bästa valet för svar på ja /nej typ frågor . Dock är en fördel med Input Box funktion som du inte behöver skapa en särskild blankett för att använda det , till skillnad från VBA : s övriga kontroller . En listruta kontroll , till exempel , kräver antingen en UserForm , där du måste skapa , eller ett kalkylblad , där kontrollen kommer att ta upp utrymme på skärmen . Input Box tar upp något utrymme . Det verkar , får användaren input , sedan försvinner , vilket gör den mycket diskret .