VBA TextBox - Hur infogar jag och använder TextBox i VBA-användarform?

Innehållsförteckning

Excel VBA TextBox

Textbox är helt enkelt som en ruta som används för att få inmatning från en användare, textrutor är en del av användarformuläret och i utvecklarfliken i vilket Excel-kalkylblad som helst. Om vi ​​vill skapa textrutor i ett användarformulär kan vi välja textrutalternativet från användarformulärskontroller i VBA eller i kalkylblad kan vi välja det från designfliken.

VBA TextBox är en av kontrollerna för de många kontrollerna i användarformuläret. Genom att visa textrutan på användarformuläret kan vi be dem att mata in data i textrutan, och data som matats in av användaren kan lagras i kalkylbladet med enkla koder.

Användarformulär är mycket attraktiva i VBA-kodning. Det hjälper oss oerhört, särskilt när vi behöver få inlägg från användarna. Med användarformulär har vi många kontroller, och för att få inmatningsvärdet från användarna är "Text Box" det perfekta alternativet i en användarform. Genom att sätta en textruta på användarformuläret kan vi faktiskt berätta för användaren att ange önskat värde i textrutan vi visar. Om du inte har någon aning om VBA-textrutor tar den här artikeln en rundtur i VBA-textrutor.

Hur infogar jag TextBox i VBA UserForm?

För att infoga en textruta först måste vi infoga användarformulär. För att infoga användarformulär, gå till Infoga> Användarformulär.

Så snart du klickar på användarformulär kommer vi att använda användarformulär precis som en annan modul.

Klicka på användarformuläret för att se kontrollerna för användarformuläret.

Välj "TextBox" från den här kontrollverktygslådan och dra i användarformuläret.

Med detta kan vi se många egenskaper som är associerade med denna textruta.

TextBox-egenskaper

Tryck på F4-tangenten för att se egenskaperna för textrutan.

Som vi kan se har textrutan Namn, färg, Kant som denna många. Ge nu ett egentligt namn så att vi enkelt kan hänvisa till denna textruta när vi kodar.

Exempel på att använda TextBox i användarform

Vi genomför ett av projekten med VBA-text. Vi skapar ett användarformulär för datainmatning för att lagra information om de anställda.

Steg 1: Rita etikett på användarformuläret.

Steg 2: Ändra standardtexten för etiketten till "Anställds namn".

Steg 3: Rita en textruta framför etiketten.

Steg 4: Ge ett riktigt namn till textrutan som "EmpNameTextBox."

Steg 5: Rita nu ytterligare en etikett under den första etiketten och skriv in texten som "Anställd-ID."

Steg 6: Rita en textruta framför den andra etiketten och namnge den som "EmpIDTextBox."

Steg 7: Rita ytterligare en etikett och skriv in texten som "Lön".

Steg 8: Rita ytterligare en textruta framför etiketten "Lön" och namnge den som "SalaryTextBox."

Steg 9: Sätt nu in "Kommando-knapp" från verktygslådan.

Steg 10: Ändra kommandoknappens text som "Skicka".

Okej, vi är färdiga med designdelen för User Form. Nu måste vi skriva koden för att lagra de uppgifter som anges i detta användarformulär. Från och med nu kör du användarformuläret genom att trycka på F5-tangenten. Vi borde se ett användarformulär som det här.

Steg 11: Ändra bildtexten för användarformuläret i fönstret Egenskaper.

Steg 12: Dubbelklicka nu på knappen Skicka kommando. Så snart du dubbelklickar kommer du att se den här automatiska subproceduren som nedan.

Det här är när du klickar på knappen Skicka, vad som ska hända. Vi måste nämna uppgifterna i VBA-koden. I det här projektet är vårt mål att lagra de uppgifter som anges i textrutan så snart vi klickar på knappen Skicka.

För det här skapar du först en mall som denna i kalkylbladet "Anställdsblad".

Steg 13: Kom nu tillbaka till den visuella grundredigeraren. Inuti knappen klickar du först på underrutin i VBA för att bestämma den senast använda raden med hjälp av nedanstående kod.

Koda:

Privat underkommandoButton1_Click () Dim LR så länge LR = Arbetsblad ("Medarbetarblad"). Cell (Rader.Count, 1) .End (xlUp) .Row + 1 End Sub

Steg 14: Det första är att i den första kolumnen lagrar vi anställdas namn. Så för detta måste vi komma åt textrutan "EmpNameTextBox."

Koda:

Privat underkommandoButton1_Click () Dim LR så länge LR = Arbetsblad ("Medarbetarblad"). Cell (Rader.Count, 1) .End (xlUp) .Row + 1 Ramge ("A" & LR) .Value = EmpNameTextBox.Value Avsluta sub

Steg 15: I den andra kolumnen måste vi lagra anställd-ID. Så detta kommer att uppnås genom att öppna textrutan "EmpIDTextBox."

Koda:

Private Sub CommandButton1_Click() Dim LR As Long LR = Worksheets("Employee Sheet").cell(Rows.Count, 1).End(xlUp).Row + 1 Ramge("A" & LR).Value = EmpNameTextBox.Value Ramge("B" & LR).Value = EmpIDTextBox.Value End Sub

Step 16: At last, we need to store the salary part. For this, we need to access to text box named “SalaryTextBox.”

Code:

Private Sub CommandButton1_Click() Dim LR As Long LR = Worksheets("Employee Sheet").cell(Rows.Count, 1).End(xlUp).Row + 1 Ramge("A" & LR).Value = EmpNameTextBox.Value Ramge("B" & LR).Value = EmpIDTextBox.Value Range("C" & LR).Value = SalaryTextBox.Value End Sub

Ok, we are done with the coding part as well. Now run the code using the F5 key. We should see a User Form like the below.

Från och med nu är alla lådor tomma.

Fyll i detaljerna först.

Klicka nu på knappen "Skicka". Det kommer att lagra data på kalkylbladet.

Så här kan du fortsätta att ange data och trycka och skicka-knappen. Detta är det enkla användarformuläret för datainmatning med en textruta.

Intressanta artiklar...