Funcția VBA InputBox - Cum să creați InputBox și să stocați valori?

Excel VBA InputBox

VBA InputBox este funcția încorporată utilizată pentru a obține o valoare de la utilizator, această funcție are două argumente majore în care unul este antetul pentru caseta de intrare și altul este întrebarea pentru caseta de intrare, funcția casetă de intrare poate stoca doar tipurile de date de intrare pe care o poate deține variabilă.

Adesea în Excel, folosim datele care sunt deja acolo în foaia Excel. Uneori avem nevoie și de un fel de date de intrare de la utilizatori. Mai ales în VBA, de multe ori este necesară introducerea de la utilizator.

Folosind InputBox, putem obține datele de la utilizator și le putem folosi în scopul nostru. Un InputBox va cere utilizatorului să introducă valoarea afișând InputBox.

Sintaxă

  • Prompt: Acesta nu este altceva decât mesajul către utilizator printr-o casetă de introducere.
  • Titlu: Care este titlul casetei de introducere?
  • Implicit: Care este valoarea implicită a cutiei de intrare? Această valoare apare în zona de tastare a casetei de intrare.

Acești trei parametri sunt suficient de buni în Excel. Ignorați ceilalți 4 parametri opționali. Pentru a înțelege această sintaxă, uitați-vă la captura de ecran de mai jos.

Cum se creează InputBox în VBA?

Bine, sări direct la practic. Urmați pașii de mai jos pentru a crea prima casetă de intrare.

Pasul 1: Accesați VBE (Visual Basic Editor) și introduceți un nou modul.

Pasul 2: Faceți dublu clic pe modulul introdus și creați un nume de macro.

Pasul 3: Începeți să tastați cuvântul „InputBox” veți vedea opțiuni conexe.

Pasul 4: Selectați cutia de intrare și acordați spațiu și veți vedea sintaxa cutiei de intrare.

Pasul 5: dați promptul „Vă rugăm să introduceți numele dvs.”.

Pasul 6: introduceți titlul casetei de intrare ca „Informații personale”.

Pasul 7: Tastați valoarea implicită ca „Tastați aici”.

Pasul 8: Am terminat. Rulați acest cod și vedeți prima casetă de introducere.

Stocați valoarea InputBox în celule

Acum vom trece prin procesul de stocare a valorilor în celule. Urmați pașii de mai jos.

Pasul 1: declararea variabilei ca variantă.

Cod:

Sub InputBox_Example () Dim i As Variant End Sub

Pasul 2: Pentru această variabilă, atribuiți valoarea prin caseta de intrare.

Cod:

Sub InputBox_Example () Dim i As Variant i = InputBox ("Vă rugăm să introduceți numele dvs.", "Informații personale", "Tastați aici") Finalizați sub

Notă: Odată ce caseta de intrare vine în dreapta semnului egal, trebuie să introducem argumentele sau sintaxa între paranteze, cum ar fi formulele noastre obișnuite.

Pasul 3: Acum, indiferent de valoarea introdusă în caseta de intrare, trebuie să o stocăm în celula A1. Deci, pentru aceasta, scrieți codul ca Range („A1”). Valoare = i

Cod:

Sub InputBox_Example () Dim i As Variant i = InputBox ("Vă rugăm să introduceți numele dvs.", "Informații personale", "Tastați aici") Interval ("A1"). Valoare = i End Sub

Ok, am terminat. Să rulăm acest cod acum apăsând tasta F5 sau puteți rula codul manual, așa cum se arată în captura de ecran de mai jos.

De îndată ce rulați acest cod, vom vedea căsuța de intrare.

Tastați numele și faceți clic pe Ok.

De îndată ce introduceți numele și faceți clic pe OK, veți vedea valoarea casetei de intrare în celula A1.

Notă: Putem stoca orice valoare din caseta de intrare dacă variabila este definită corect. În exemplul de mai sus, am definit variabila ca o variantă, care poate conține toate tipurile de date.

De exemplu, acum am schimbat tipul variabilei la Data.

Acum rulați codul și tastați altul decât data.

Faceți clic pe ok și vedeți care este răspunsul.

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.

Deci, în consecință, selectați tipul dvs. Am selectat 1 ca parametru, adică numai numere.

Acum executați codul și tipul valorii textului.

Faceți clic pe OK și vedeți ce se întâmplă.

Se spune că numărul nu este valid. Deci, putem introduce doar numere în această casetă de intrare.

Lucruri de amintit

  • Avem nevoie de o variabilă pentru a stoca valoarea dată de caseta de intrare.
  • Dacă utilizați InputBox fără metoda Application, ar trebui să fiți perfect cu privire la tipul de date variabil.
  • Utilizați tipul de date Variant, care poate conține orice tip de date și stoca.

Articole interesante...