Excel VBA Lukk UserForm

Tidligere hadde vi diskutert hvordan du oppretter en UserForm i VBA. Nå for å få innspill fra brukeren var det en knapp for innsending, som lagret deretter verdien gitt av brukeren i et excelark. Men hva etter å ha gitt verdien skjemaet fremdeles er der. Eller hva hvis brukeren ikke vil gi noen data og lukke brukerformen. Vi hadde ikke diskutert hvordan vi vil lukke brukerformen for brukeren. Ligner på innsendingsknapp for å sende inn dataene, vi hadde en annen knapp som var for å avbryte som brukes til å skjule brukerformen. Avbryt-knappen har også sin egen kode for å skjule brukerformen for brukeren. Nå er det to metoder som vi kan skjule en brukerform. De er som følger:

  1. Den første metoden er når vi bruker Unload Me-metoden. Denne metoden laster av UserForm, og den forsvinner fra displayet.
  2. En annen metode er når vi bruker Useform.Hide-metoden. Denne metoden skjuler UserForm fra skjermen.

Det anbefales å bruke den andre metoden for å lukke UserForm, da den første metoden vil fjerne UserForm fullstendig og alle data som er lagt inn av brukeren vil gå tapt. Men når vi bruker den andre metoden for å skjule UserForm, er den siste oppføringen som ble gjort på brukerformen av brukeren fremdeles til stede.

Hvordan lukke UserForm i Excel VBA?

Vi lærer om hvordan du lukker UserForm i Excel VBA med dens forskjell og med noen få eksempler, men først, la oss lære metoden for å lukke en brukerform i VBA.

Det er to metoder for å lukke brukerform i VBA:

  1. Unload Me
  2. Gjemme seg
Du kan laste ned denne VBA Lukk UserForm Excel Mal her - VBA Lukk UserForm Excel Mal

Excel VBA Lukk UserForm - Eksempel # 1

La oss først prøve metoden for å lukke en UserForm ved å bruke alternativet Unload Me. Vi hadde en brukerform i vår forrige artikkel som ser ut som den nedenfor.

For sendeknappen hadde vi koden vår, som lagret dataene som ble lagt inn av brukeren i Excel. Dobbeltklikk nå på avbryt-knappen som åpner koden for det samme som følger,

Kode:

 Privat underkommandoButton2_Klikk () Slutt sub 

Avbryt-knapp var den andre kommandoknappen vi ga brukerformen. Skriv nå kodeangivelsen som Unload me in the seksjonen som vist på bildet under.

Kode:

 Privat underkommandoButton2_Klikk () Unload Me End Sub 

Vi kan se at meg er et objekt for unload-uttalelse. La oss nå kjøre brukerformen ved å trykke på F5-tasten for å vise den.

Trykk på Avbryt-knappen for å se at brukerformen forsvinner, og den tar oss tilbake til den opprinnelige brukerformen til prosjektvinduet.

Excel VBA Lukk UserForm - Eksempel # 2

La oss nå prøve den andre metoden som userform.hide method på lignende måte som ovenfor, først, la oss åpne userform fra userform i prosjektvinduet.

Dobbeltklikk nå på avbryt-knappen som åpner visningskoden for avbryt-kommandoknappen.

Vi har allerede Unload Me-setningen til stede i avbryt-kommandoknappen, tøm koden og erstatt den med Userform.Hide- setningen.

Kode:

 Privat underkommandoButton2_Klikk () UserForm1.Hide End Sub 

La oss nå kjøre brukerformen ved å trykke på F5-tasten og vise den på skjermen.

Når vi trykker på avbryt-knappen blir vi igjen flyttet til prosjektvinduet til brukerformen. Nå lurer vi kanskje alle på at hva er forskjellen mellom de to metodene, ettersom begge metodene lukker brukerformen perfekt for oss, hvorfor er den andre metoden den mest anbefalte metoden for begge. Vi vil finne ut nøyaktig hvorfor i de neste to eksemplene.

Excel VBA Lukk UserForm - Eksempel # 3

La oss nå gå til den første metoden Unload Me-setningen for avbryt-knappen og gi noen data til brukerformen. Dobbeltklikk på avbryt-knappen fra brukerformen for å åpne visningskoden for kommandoknappen og erstatt koden med Unload Me- setningen som følger.

Kode:

 Privat underkommandoButton2_Klikk () Unload Me End Sub 

Kjør nå brukerformen igjen ved å trykke på F5-tasten og få den til å vises på skjermen.

La oss gi noen data til brukerformen som følger, ikke trykk på send-knappen, trykk på Avbryt-knappen.

Kjør igjen brukerformen ved å trykke på F5-tasten.

Nå kan vi se at vi har mistet dataene vi har gitt til brukerformen siden vi ikke sendte dem inn, de var ikke lagret i arbeidsarket og vi lukket brukerformen ved å bruke Unload Me-setningen som fjernet dataene som allerede var fylt ut.

Excel VBA Lukk UserForm - Eksempel # 4

La oss nå gjøre den samme øvelsen, men ved å bruke Userform.Hide uttalelse,

Bytt ut koden for i kommandoknappen ved å bruke metoden form.hide som vist nedenfor.

Kode:

 Privat underkommandoButton2_Klikk () UserForm1.Hide End Sub 

Nå vil vi igjen kjøre brukerformen ved å trykke på F5-tasten og gi den noen data som følger.

La oss nå trykke på avbryt-knappen, og kjør igjen brukerformen som vil gi oss følgende resultat.

Dataene går ikke en gang tapt da vi trykket på avbryt-knappen hvis vi trykker på send det vil lagre dataene i Excel som følger.

Nå er dataene lagret, brukerformen er tom nå, og vi kan lukke brukerformen med avbryt-knappen,

Ting å huske

  • Når dataoppføringen er utført av brukeren, må vi lukke brukerformen, så den er like viktig som innsendingsknappen.
  • Lukk brukerform er i kommandoknappen til brukerformen i VBA, Generelt heter den som Avbryt eller Lukk.
  • Det er to separate metoder for å lukke en brukerform, men de tjener til slutt samme formål som hverandre.
  • Userform.Hide-metoden anbefales mest, selv om brukerformen blir lukket av brukeren før dataregistreringen, dataene ikke går tapt og oppføringen som er gjort av brukeren vises igjen når en bruker åpner brukerformen.

Anbefalte artikler

Dette er en guide til VBA Lukk UserForm. Her diskuterer vi hvordan du lukker UserForm i Excel ved å bruke Unload Me-setningen og Userform.Hide-metoden i VBA sammen med noen praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. Hvordan aktivere ark i VBA?
  2. Evaluer formler i Excel
  3. Komplett guide til VBA listeboks
  4. HYPERLINK Formel i Excel

Kategori: