VBA Chiudi UserForm

Quando creiamo un modulo utente, prende i dati come input dagli utenti, ma i dati forniti al modulo non si chiude, quindi può indurre l'utente a inserire di nuovo i dati, usiamo due diversi comandi per chiudere un modulo utente quando l'input ha stato fornito e sono il metodo Unload me per chiudere un userform oppure possiamo usare il metodo userform.hide.

Excel VBA Chiudi modulo utente

I form utente sono vitali mentre si ottengono input dall'utente come parte del progetto VBA. Di solito progettiamo il modulo utente prima di presentarlo di fronte all'utente. Una volta completata la progettazione del modulo utente VBA, dobbiamo mostrare lo stesso di fronte all'utente e richiedere la codifica VBA. Allo stesso modo, per chiudere il modulo utente è necessaria la conoscenza della codifica VBA.

In questo articolo, ti mostreremo come chiudere il modulo utente nella codifica VBA.

Come chiudere UserForm in Excel VBA?

Una volta che lo scopo del modulo utente è stato eseguito, è necessario continuare a mostrare il modulo utente davanti all'utente, quindi è necessario chiudere il modulo utente. Possiamo chiudere il form utente utilizzando l'istruzione "Unload Me" e le istruzioni "UserForm.Hide". Anche se entrambi sono leggermente diversi l'uno dall'altro, alla fine servirà al nostro scopo.

Puoi scaricare questo modello VBA Close UserForm Excel qui - VBA Close UserForm Excel Template

# 1 - Chiudi modulo utente utilizzando l'istruzione "Unload Me" in VBA

Ad esempio, guarda l'immagine sottostante del modulo utente.

Ho denominato il modulo utente "MyUserForm".

Se eseguo il modulo utente vedremo il modulo utente come di seguito.

Devo compilare i dettagli richiesti, una volta inserite le informazioni se faccio clic sul pulsante Invia, acquisirà gli stessi dati nel foglio di lavoro che è visibile sul lato sinistro.

Dopo aver fatto clic sul pulsante di invio, ha acquisito i dati che ho inserito nel modulo utente.

Se noti che abbiamo un altro pulsante chiamato "Annulla". Cosa fa questo?

Prima di visualizzare il form utente, dobbiamo configurare questo pulsante. Ora tornerò all'editor di visual basic per configurare questo pulsante.

Ora farò doppio clic sul pulsante Annulla e si aprirà la procedura secondaria VBA automatica come di seguito.

In questa procedura, dobbiamo scrivere il codice VBA su cosa dovrebbe accadere se facciamo clic sul pulsante Annulla. Quando si fa clic su questo pulsante di annullamento, si dovrebbe chiudere il modulo utente su cui stiamo lavorando al momento.

Quindi, scrivi il codice come "Unload Me".

Codice:

 Sottotitoli privati ​​CancelButton_Click () Unload Me End Sub 

"Unload Me" è la parola che usiamo per chiudere il modulo utente su cui stiamo lavorando. Qui il modulo utente riconosce la parola "Io" come lo stesso Form utente.

"Unload Me" può essere utilizzato solo su quella procedura del modulo utente, non possiamo chiamare questa istruzione in altri moduli. Se chiamato, mostrerà il messaggio di errore " Uso non valido della parola chiave ".

Ok, eseguiamo il codice usando il tasto F5 o manualmente ora, vedremo il modulo utente vuoto.

Compila i dati e fai clic su Invia.

Una volta che il pulsante di invio ha fatto clic, memorizzerà i valori nelle celle menzionate.

Se l'inserimento dei dati è terminato, dobbiamo chiudere il form utente, no ??

Quindi, fare clic sul pulsante Annulla per chiudere il modulo utente, chiuderà il modulo utente.

# 2 - Chiudi UserForm usando il metodo Nascondi in Excel VBA

Possiamo anche chiudere Userform utilizzando il metodo "Nascondi" anche in VBA. Ora ancora una volta farò doppio clic sul pulsante Annulla per visualizzare la sottoprocedura privata.

Poiché abbiamo già scritto il codice per chiudere il form utente, possiamo vedere il codice esistente in VBA. Ora lo cancellerò.

Per usare il metodo Hide dobbiamo chiamare il form utente con il suo nome. In questo caso, il nome del nostro modulo utente è "MyUserForm".

Dopo aver menzionato il modulo utente con il suo nome, se mettiamo un punto (.) Possiamo vedere tutte le proprietà e i metodi di questo modulo utente. Ora selezionerò il metodo "Nascondi".

Ok, eseguiamo il modulo utente ancora una volta. Vedremo il modulo utente vuoto, riempire prima i dettagli.

Ora senza fare clic sul pulsante Invia, farò clic sul pulsante Annulla, nasconderà il modulo utente.

Differenza tra Scarica e nascondi in Excel VBA

Devi avere una domanda su quale sia la differenza tra Unload & Hide, dove entrambi hanno uno scopo simile. C'è una differenza tra questi due. Ora prima userò l'istruzione Unload Me. Guarda l'immagine qui sotto.

Ho inserito i dati nel modulo utente ma non l'ho ancora inviato. Se clicco su Annulla verrà scaricato il modulo utente.

Ora di nuovo eseguirò il codice tramite il tasto di scelta rapida Excel F5 o manualmente, verrà visualizzato un modulo utente vuoto.

Anche se ho inserito i dati correttamente per errore ho cliccato sul pulsante cancella, quando riappare il nuovo form utente ho riempito i dati da zero.

Ora userò il metodo "Nascondi".

No, farò clic sul pulsante Annulla, nasconderà il modulo utente visibile. Ma quando rieseguo la macro, tornerà con i dati che ho già inserito nel modulo utente.

In questo modo possiamo utilizzare l'istruzione "Unload" e il metodo "Nascondi" per chiudere i moduli utente in Excel VBA.