VBA TextBox

Excel VBA TextBox

Textlåda ä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är och i utvecklarfliken i alla Excel-kalkylblad. Om vi ​​vill skapa textrutor i en användarform kan vi välja alternativet textruta 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 ange informationen 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?

Du kan ladda ner den här VBA-textrutmallen här - VBA-textrutamall

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.

Från denna kontrollverktygslåda väljer du "TextBox" och drar 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, Border 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 kommer att skapa ett användarformulär för datainmatning för att lagra information om de anställda.

Steg 1: Rita etiketten 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 texten på kommandoknappen 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 användarformuläret genom att trycka på F5-tangenten, vi borde se ett användarformulär som detta.

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 ä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 detta skapar du först en mall som denna i kalkylbladet "Anställdsblad".

Steg 13: Kom nu tillbaka till den visuella grundredigeraren. Inuti knappen klicka underrutin i VBA först 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 ("Anställd"). 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 som heter "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 uppnås genom att öppna textrutan med namnet “EmpIDTextBox”.

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 Ramge ("B" & LR) .Value = EmpIDTextBox.Value End Sub 

Steg 16: Äntligen måste vi lagra lönedelen, för detta måste vi komma åt textrutan med namnet “SalaryTextBox”.

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 Ramge ("B" & LR) .Value = EmpIDTextBox.Value Range ("C" & LR) .Value = SalaryTextBox.Value End Sub 

Okej, vi är klara med kodningsdelen också. Kör nu koden med F5-tangenten, vi ska se ett användarformulär som nedan.

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

Fyll i detaljerna först.

Klicka nu på "Skicka" -knappen, den lagrar data i kalkylbladet.

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