UserForm , chiamati anche le finestre di dialogo sono finestre grafiche che permettono agli utenti di inserire i dati nei campi e inserire i dati in fogli di calcolo Excel . Un form viene incorporato in una cartella di lavoro di Excel e viene eseguito quando un utente apre il file Excel , in genere tramite una macro . Perché UserForms sfruttare il linguaggio Visual Basic , possono essere generosamente personalizzati per garantire che i dati immessi nei loro campi sia completo e valido prima di essere trasferito al foglio di lavoro di Excel stesso per ulteriori manipolazioni . Cose che ti serviranno
Microsoft Excel con Visual Basic Editor
Mostra più istruzioni
Come trasferire i dati da un form a un foglio di lavoro
pagina 1
Aprire Microsoft Excel e creare una nuova cartella di lavoro vuota , fare clic sul menu File e selezionando " nuovo ". Salvare il file di Excel come " update_worksheet.xls . "
2
Tenere la cartella di lavoro aperta e aprire l' editor di Visual Basic premendo Alt- F11 . Creare un nuovo form facendo clic sul menu Inserisci e selezionare " form. " Assegnare un nome al form " transferForm " modificando l' attributo Nome nel menu Proprietà. Modificare l'attributo Caption " transferForm . "
3
Aggiungere una casella di testo al form selezionando una casella di testo dalla casella degli strumenti e trascinandola nella posizione del modulo . Assegnare un nome nella casella di testo " transferInput " nella finestra delle proprietà . Se la casella degli strumenti non è aperto , selezionare il menu Visualizza e Toolbox .
4
Aggiungi un pulsante di aggiornamento per il modulo , selezionando un CommandButton dalla Casella degli strumenti e trascinarlo in posizione sul modulo . Assegnare un nome al CommandButton " transferButton " nella finestra delle proprietà e modificare l'attributo caption per "Aggiornamento del foglio di lavoro . "
5
Aggiungere un pulsante di chiusura per il modulo selezionando un secondo CommandButton dalla Casella degli strumenti e trascinandola nella immettere sul modulo . Assegnare un nome al CommandButton " closeButton " nella finestra delle proprietà e modificare l'attributo caption per "Modulo chiudi".
6
Aprire l'editor di codice di Visual Basic , fare doppio clic sul transferButton ( pulsante di aggiornamento ) . Aggiungere il codice per la funzione che trasferisce tutti i dati inseriti nella casella di testo al foglio di lavoro update_worksheet.xls quando l' utente fa clic sul pulsante transferButton _CLICK ( ) . Chiudere l'editor di codice Visual Basic.
Private Sub transferButton_Click ( ) per
Dim transferWorksheet come foglio di lavoro
transferWorksheet = Worksheets ( " Foglio1 " ) per
transferWorksheet . Cells (1,1). Valore = Me.transferInput.Value
End Sub
7
Riaprire l'editor di codice di Visual Basic , fare doppio clic sul closeButton ( pulsante di chiusura ) . Aggiungere il codice per la funzione closeButton_Click ( ) che chiude il form quando l' utente fa clic sul pulsante . Chiudere l'editor di codice Visual Basic.
Private Sub closeButton_Click ( ) per
Unload Me End Sub
8
Eseguire codice del form facendo clic dal menu Esegui e selezionando " Esegui Sub /UserForm . " Inserire i dati nel campo di immissione e fare clic su " transferButton . " Verificare che i dati vengono trasferiti con successo per il primo valore della cella nel foglio di lavoro di Excel , il passaggio a Excel , se necessario. Salvare e chiudere il modulo utente in esecuzione .
9
Utilizzare una routine evento Excel per aprire il form quando un utente apre la cartella di lavoro in Excel . Aprire Esplora il progetto e fare doppio clic finestra del codice di ThisWorkbook . Inserisci una macro che apre la maschera quando si apre il foglio di lavoro e salvare la macro . Salvare e chiudere Visive e update_worksheet.xls di base .
Private Sub Workbook_Open ( ) per
transferForm.Show
End Sub
10
Riaprire " update_worksheet.xls . " Il transferForm form si aprirà . Digitare del testo nel campo " transferInput " e cliccare sul " transferButton . " Il testo inserito nella form transferForm verrà trasferito alla prima cella Foglio1 in update_worksheet.xls .