VBA InputBox-funksjon - Hvordan lage InputBox og lagre verdier?

Innholdsfortegnelse

Excel VBA InputBox

VBA InputBox er innebygd funksjon som brukes for å få en verdi fra brukeren, denne funksjonen har to hovedargumenter der den ene er overskriften for inngangsboksen og en annen er spørsmålet for inngangsboksen, inngangsboksfunksjonen kan bare lagre datatypene som den variable kan inneholde.

Ofte i excel bruker vi dataene som allerede er der i excel-arket. Noen ganger trenger vi også noen slags inndata fra brukerne. Spesielt i VBA kreves det ofte input fra brukeren.

Ved hjelp av InputBox kan vi hente dataene fra brukeren og bruke dem til vårt formål. En InputBox vil be brukeren om å angi verdien ved å vise InputBox.

Syntaks

  • Spørsmål: Dette er ingenting annet enn meldingen til brukeren gjennom en inndataboks.
  • Tittel: Hva er tittelen på inndataboksen?
  • Standard: Hva er standardverdien for innboks? Denne verdien vises i skriveområdet i innboks.

Disse tre parametrene er gode nok i Excel. Ignorer de fire andre valgfrie parametrene. For å forstå denne syntaksen, se på skjermbildet nedenfor.

Hvordan lage InputBox i VBA?

Ok, lar oss hoppe rett til praktisk. Følg trinnene nedenfor for å lage din første innboks noensinne.

Trinn 1: Gå til VBE (Visual Basic Editor), og sett inn en ny modul.

Trinn 2: Dobbeltklikk på den innsatte modulen og opprett et makronavn.

Trinn 3: Begynn å skrive ordet "InputBox", du vil se relaterte alternativer.

Trinn 4: Velg innboks og gi plass, så ser du syntaksen til innboks.

Trinn 5: Gi meldingen "Vennligst skriv inn navnet ditt."

Trinn 6: Skriv inn tittelen på innboksen som "Personlig informasjon."

Trinn 7: Skriv inn standardverdien som "Skriv her."

Trinn 8: Vi er ferdige. Kjør denne koden og se din første inndataboks.

Lagre verdien av InputBox til celler

Nå vil vi gå gjennom prosessen med å lagre verdier i celler. Følg trinnene nedenfor.

Trinn 1: Deklarere variabelen som variant.

Kode:

Sub InputBox_Example () Dim i Som Variant End Sub

Trinn 2: For denne variabelen, tilordne verdien gjennom innboks.

Kode:

Sub InputBox_Example () Dim i As Variant i = InputBox ("Vennligst skriv inn navnet ditt", "Personlig informasjon", "Skriv her") End Sub

Merk: Når inngangsboksen kommer til høyre for likhetstegnet, må vi legge inn argumentene eller syntaksen i parentes som de vanlige formlene.

Trinn 3: Nå, uansett hvilken verdi som er skrevet i inndataboksen, må vi lagre den i celle A1. Så for dette, skriv koden som Range (“A1”). Verdi = i

Kode:

Sub InputBox_Example () Dim i As Variant i = InputBox ("Vennligst skriv inn navnet ditt", "Personlig informasjon", "Skriv her") Område ("A1"). Verdi = i End Sub

Ok, vi er ferdige. La oss kjøre denne koden nå ved å trykke på F5-tasten, eller du kan også kjøre koden manuelt, som vist på skjermbildet nedenfor.

Så snart du kjører denne koden, ser vi innboks.

Skriv inn navnet og klikk på OK.

Så snart du skriver inn navnet og klikker på OK, vil du se innboksverdien i celle A1.

Merk: Vi kan lagre hvilken som helst verdi fra innboks hvis variabelen er definert riktig. I eksemplet ovenfor har jeg definert variabelen som en variant, som kan inneholde alle typer data.

For eksempel, nå har jeg endret variabeltypen til Dato.

Kjør nå koden og skriv inn annen enn datoen.

Klikk på ok og se hva svaret er.

We got the error value as Type mismatch. Since we have declared the variable data type as DATE, we cannot store anything other than DATE with an inputbox.

Now enter the date and see what happens.

As soon as you type the date and then click on OK and see what the response is.

Since we have entered the correct value, we got the result in the cell.

Validation of Input from User

You know what we can actually allow users to enter only specific value i.e., allow the user to enter only text, only number, only logical values, etc.

To perform this task, we need to use the method Application.InputBox.

Let’s look at the syntax of the Application.InputBox.

  • Prompt: This is nothing but the message to the user through an input box.
  • Title: What is the title of the input box?
  • Default: What is the default value of the input box? This value appears in the typing area of the input box.
  • Left: What should be the x position of the input box in the current window?
  • Top: What should be the y position of the inputbox in the current window?

To start this, inputbox declare variable and assign the value to a variable.

Now to assign value to start the word Application.

After the word Application, put a dot (.) and type Inputbox.

Select the input box and open the bracket.

As usual, enter Prompt, Title, and Default Value.

Now ignore left, top, help file, help context ID by typing 5 commas (,).

Here Type means what should be the input string. Below are the validations available.

Så velg deretter din type. Jeg har valgt 1 som parameter, dvs. bare tall.

Kjør nå koden og typen tekstverdi.

Klikk på OK og se hva som skjer.

Det står at tallet ikke er gyldig. Så vi kan bare skrive inn tall i denne inntastingsboksen.

Ting å huske

  • Vi trenger en variabel for å lagre verdien gitt av inndataboksen.
  • Hvis du bruker InputBox uten applikasjonsmetoden, bør du være perfekt når det gjelder variabel datatype.
  • Bruk variantdatatype, som kan inneholde alle typer datatyper og lagre.

Interessante artikler...