Inhoud
Leren over de "Input Box" -functie in VBA voor Excel is de eerste stap in het maken van programma's met deze tool. De "Input Box" is een eenvoudige inleiding tot het handmatig schrijven van VBA-programma's, omdat er slechts één argument voor nodig is, maar de essentiële functie van het ontvangen van gebruikersinvoer wordt vervuld. Overweeg ook om meer te weten te komen over de "MsgBox" -functie, omdat de rol ervan, namelijk het tonen van berichten aan gebruikers, het complement is van de "Input Box".
De dialoogvensters laten gebruikers weten wat er gebeurt (Stockbyte / Stockbyte / Getty Images)
doel
De functie "Input Box" vraagt u om gegevens in te voeren en te ontvangen. Een 'Invoervak' kan bijvoorbeeld een gebruiker ertoe aanzetten om de leeftijd van een persoon in te voeren om het in een tabel met de naam 'Verjaardaglijst' op te slaan in een Excel-werkblad.
argumenten
Een "Input Box" neemt verschillende argumenten, maar er is slechts één nodig: de tekst die de gebruiker vraagt om gegevens in te voeren. Optionele argumenten omvatten de titel van het dialoogvenster en het standaardargument. U kunt de box op een specifieke positie plaatsen met behulp van de "Xpos" - en "Ypos" -argumenten.
Retourwaarde
De "InputBox" retourneert een tekstreeks, wat meestal betekent dat u een variabele moet declareren om deze te ontvangen. Deze verklaring kan twee vormen aannemen. De eerste specificeert geen waardetype (u kunt bijvoorbeeld "Dim value Return" typen of het type variabele aangeven met een declaratie van het type "Dimwaarde Retourtekenreeks"). Over het algemeen raden we aan een meer specifiek type te gebruiken, zodat VBA typegerelateerde fouten kan vastleggen, bijvoorbeeld wanneer een getal in een "String" -variabele wordt gebruikt.
Voorbeeldprogramma
Probeer een voorbeeldprogramma dat de "Input Box" integreert met Excel. Klik op de knop "Visual Basic" op het tabblad Excel-ontwikkelaar om de VBA-programmeeromgeving te openen. Kopieer de volgende code:
Public Sub GetEmailAdr () Dim str_email As String (InStr (str_email, "@") = 0) str_email = InputBox ("Vul een geldig e-mailadres in.") Loop Range ("A1") = str_email End Sub
Plak de code in het venster en voer het programma uit door op "F5" te drukken. Dit programma vraagt u om een gebruikersinvoer, voert een eenvoudige controle uit en zet de geretourneerde waarde in een cel als deze geldig is. Anders zal het programma de gebruiker vragen om een andere waarde.
Alternatieven en voordelen
"Input Box" is een van de vele manieren om gebruikersinvoer in Excel te krijgen. U kunt ook een werkbladcel of een "Tekstvak" -besturingselement gebruiken om het vast te leggen. Omdat Input Box tekstinvoer ondersteunt, is dit niet de beste optie voor "Ja / Nee" -vragen. Een voordeel van de functie is echter dat u geen speciaal formulier hoeft te maken om het te gebruiken, in tegenstelling tot andere VBA-besturingselementen. Een List Box-besturingselement heeft bijvoorbeeld een gebruikersformulier nodig dat u moet maken of een werkblad waarin het besturingselement ruimte inneemt. De "Input Box" neemt geen ruimte in beslag: het zal verschijnen, het zal de gebruikersinvoer ontvangen en het zal verdwijnen, wat erg discreet is.