Excel VBA brugerformular - Hvordan oprettes en interaktiv brugerform?

Indholdsfortegnelse

Excel VBA brugerformular

Brugerformular i VBA er tilpassede brugerdefinerede formularer, som er lavet til at tage input fra en bruger i form af en formular, den har forskellige sæt kontrolelementer, der skal tilføjes, såsom tekstfelter, afkrydsningsfeltetiketter osv. For at guide en bruger til at indtaste en værdi og den gemmer værdien i regnearket, hver del af brugerformularen har en unik kode med sig.

Brugerform er et objekt i Excel-grænsefladen, og inden i denne brugerformular kan vi oprette andre nyttige brugerdefinerede dialogbokse for at få data fra brugeren. Når du arbejder med en makrofil, der er oprettet af din senior eller kan downloades fra internettet, skal du have set en brugerform som denne.

I denne artikel viser vi dig, hvordan du opretter en lignende brugerform til at gemme data fra brugeren.

Hvordan oprettes brugerformular?

Ligesom hvordan du indsætter et nyt modul på samme måde, skal du klikke på INSERT-knappen i Visual Basic Editor for at indsætte brugerform.

Så snart du klikker på dette, indsættes også brugerformularen.

Før jeg fortæller dig, hvordan du programmerer dette, skal jeg vise dig, hvordan du formaterer denne brugerform.

Formatering af brugerformular

Ved at vælge brugerformularen skal du trykke på F4-tasten, den viser dig egenskabsvinduet.

Ved hjælp af dette egenskabsvindue kan vi formatere denne brugerform. Vi kan navngive det. Vi kan ændre farve, kantstil osv. …

Som dette, prøv andre egenskaber for at få synet af brugerformularen.

Nu til denne brugerform skal du indsætte Værktøjskasse.

Nu ser vi en værktøjskasse som denne.

I øjeblikket indsættes brugerformularen bare, ikke programmeret. For at vide, hvordan det fungerer, skal du bare klikke på knappen Kør. Vi ser formularen på Excel-regnearket.

Brug nu ToolBox-tegnetiketten.

Indtast teksten som medarbejdernavn inde i etiketten.

For denne etiket kan vi formatere ved hjælp af egenskaber. Nu har vi indtastet teksten som ”Medarbejdernavn:” nu kan vi se dette i egenskabsvinduet under Billedtekster.

Indsæt endnu en etiket. For at indsætte endnu en etiket kan du enten klikke på en værktøjskasse, eller du kan trække den aktuelle etiket ved at holde Ctrl- tasten nede. Du får en replika af den aktuelle etiket.

Nu får vi den samme etiket.

Skift navnet til medarbejder-id.

Indsæt nu på samme måde endnu en etiket og navngiv den som "Afdeling".

Nu skal du indsætte et tekstfelt fra værktøjskassen.

Navngiv dette tekstfelt som EmpName i egenskabsvinduet.

Som dette skal du indsætte yderligere to tekstfelter i henholdsvis fra Medarbejder-ID og afdeling. Navngiv disse tekstfelter efter deres overskrift.

På samme måde skal du gøre det for afdelingen.

Indsæt nu kommandoknappen fra værktøjskassen.

Skift navnet på kommandoknappen til "SubmitButton", og skift billedteksten til "Submit".

Insert one more button and call it “Cancel.”

Now just to see run, press the run button or use the F5 key and see how your userform looks like in Excel.

Now it is coming to the shape.

VBA Code

Now the user will enter data in this, so we need to program this to store the data entered by the user on this form.

Double click on the SUBMIT button, it will take you to the macro window with an auto-created macro like the below.

It says SubmitButton click, remember we had given a name for the SUBMIT button as SubmitButton.

So, whenever we want to call this button, we can call this by this name (submit button). Inside this macro, copy and paste the below code.

Code:

Private Sub SubmitButton_Click() Dim LR As Long LR = Cells(Rows.Count, 1).End(xlUp).Row + 1 Cells(LR, 1).Value = EmpName.Value Cells(LR, 2).Value = EmpID.Value Cells(LR, 3).Value = Dept.Value EmpName.Value = "" EmpID.Value = "" Dept.Value = "" End Sub
  • EmpName.Value here EmpName is the text box name we had given while creating the employee name text box.
  • EmpID.Value here EmpID is the text box name of the Employee ID text box.
  • Dept.Value this is the department text box name.

So, on the click on the submit button, it will store the values in the mentioned cells.

Now double click on the Cancel button. This will also show you the auto macro name like this.

Copy the below code and paste.

Code:

Private Sub CancelButton_Click() MyUserForm.Hide End Sub

MyUserForm er det navn, vi havde givet brugerformularen. MyUserForm.Hide betyder, at ved at klikke på knappen ANNULLER skjuler det brugerformularen.

Ok, opret nu en skabelon som denne i regnearket.

Slet alle de andre ark i projektmappen undtagen dette skabelonark.

Gå nu til Visual Basic Editor.

Og kør makroen ved hjælp af F5-tasten eller manuelt, vi ser brugerformularen foran os.

Indtast medarbejdernavn, medarbejder-id og afdelingens navn.

Hvis du nu klikker på knappen SEND, gemmer den værdierne i den skabelon, vi har oprettet.

På denne måde kan du fortsætte med at indtaste navnene. Brugerformularen gemmer fortsat de værdier, der er indtastet af brugeren i de angivne celler.

Så ved at bruge USER FORM kan vi faktisk skabe vidunderlige projekter for at få oplysningerne fra brugeren.

Interessante artikler...