Come acquisire dati da moduli utente in un foglio di lavoro Excel

Con Excel, puoi utilizzare Visual Basic per aggiungere una gamma di funzionalità diverse ai tuoi fogli di calcolo, inclusi "UserForms". Tramite UserForms è possibile visualizzare all'utente un modulo di input separato dal foglio di lavoro principale, utile per acquisire dati da persone che potrebbero non avere familiarità con i fogli di calcolo. Con un po' di codice Visual Basic, puoi aggiungere tutti questi dati al tuo foglio di calcolo in nuove righe.

Definisci i tuoi campi

Avvia Excel. Inserisci i nomi di tutti i campi che desideri acquisire nella riga superiore, partendo da "A1" e procedendo verso destra. Fare clic su "Sviluppatore", quindi su "Visual Basic". Verrà visualizzata la finestra di Visual Basic. Fare clic sull'icona "A" dalla casella degli strumenti, quindi fare clic e trascinare all'interno della finestra "UserForm1" nella posizione in cui si desidera inserire il primo campo modulo. Modifica l'etichetta modificando la proprietà "Didascalia" in qualcosa di più descrittivo, come "Nome", ad esempio. Crea un'etichetta per ciascuno dei campi che hai inserito nel foglio di lavoro.

Aggiungi le tue caselle di testo

Seleziona l'icona "Casella di testo" dalla casella degli strumenti e trascina una casella di testo a destra della prima etichetta. Se utilizzerai solo pochi campi, è accettabile lasciare la proprietà "(Nome)" come predefinita "TextBox1". Tuttavia, se hai bisogno di un numero elevato di campi, ciò potrebbe creare confusione, quindi dovresti modificarli in modo che corrispondano alle etichette che hai già creato. Assicurati che ogni etichetta abbia una casella di testo corrispondente.

Aggiungi un pulsante di invio

Fare clic sull'icona "Pulsante di comando" nella casella degli strumenti, che assomiglia a un pulsante standard in stile Windows. Fare clic e trascinarlo nella dimensione e nella posizione richieste in UserForm1. In genere, lo vorrai sotto o vicino alla casella di testo finale nel tuo modulo. Modificare la proprietà "Didascalia" del pulsante in "Invia dati" o qualcosa di simile, indicando all'utente che deve fare clic su questo pulsante per inviare i propri dati.

Aggiungi codice Visual Basic

Fare doppio clic sul pulsante. Inserisci il seguente codice tra "Private Sub" e "End Sub":

eRow=Sheet1.Cells(Rows.Count,1).End(xlUp).Offset(1,0).Row

Quindi inizia una nuova riga sotto questa e quindi inserisci quanto segue:

Celle(erow, 1) = TextBox1.Text

Se hai rinominato le caselle di testo, cambia "TextBox1" con il nome che hai dato alla prima casella di testo. Fai questo per ogni casella di input che hai creato, iniziando una nuova riga e inserendo i nomi corretti delle caselle di testo come appropriato. Inoltre, per ogni nuova riga, incrementa di uno la cifra tra parentesi. Ad esempio, la riga successiva potrebbe essere simile a questa:

Celle(erow, 2) = TextBox2.Text

Fare clic sul pulsante "Riproduci" nella parte superiore della finestra per avviare l'acquisizione dei dati.