La funzione InputBox di VBA visualizza una finestra di dialogo che richiede all’utente l’immissione di dati e che contiene un pulsante OK e un pulsante Annulla.
La funzione restituisce una stringa di testo contenente l’input dell’utente se è selezionato il pulsante OK o una stringa di testo vuota se è selezionato il pulsante Annulla.
InputBox( Prompt, [Title], [Default], [XPos], [YPos], [HelpFile], [Context] )
Prompt | La stringa di testo che si desidera visualizzare nella casella di input | |
[Title] | Una stringa di testo facoltativa che specifica un titolo da visualizzare nella parte superiore della casella di input | |
[Default] | Una stringa di testo facoltativa che viene visualizzata nella casella di input come risposta predefinita se non viene immessa altra risposta | |
[XPos] | Un numero intero che specifica (in twips) la distanza orizzontale della casella di input, dal bordo sinistro dello schermo | |
[YPos] | Un numero intero che specifica (in twips) la distanza verticale della casella di input, dalla parte superiore dello schermo | |
[HelpFile] | Un argomento stringa facoltativo, che identifica il file della Guida relativo alla casella di input. Se viene fornito l'argomento [HelpFile], deve essere fornito anche l'argomento [Context] |
|
[Context] | Un valore numerico facoltativo che è l'ID di contesto per l'argomento della Guida relativo alla casella di input. Se viene fornito l'argomento [Context], deve essere fornito anche l'argomento [HelpFile] |
Esempio 1
' Richiede il nome utente
Dim response As String
response = InputBox( "Inserire il proprio nome" )
' La stringa "response" ora contiene l'input dell'utente (oppure
' una stringa vuota se è stato selezionato il pulsante Annulla).
La chiamata qua sopra alla funzione InputBox mostra all’utente la seguente finestra di dialogo:
Mentre viene visualizzata la finestra di dialogo, il codice VBA viene messo in pausa fino a quando l’utente non seleziona uno dei pulsanti.
Una volta che l’utente seleziona uno dei pulsanti della finestra di dialogo, la funzione InputBox restituisce una stringa di testo:
- Se si seleziona il pulsante OK: viene restituita la stringa di testo immessa nella finestra di dialogo;
- Se si seleziona il pulsante Annulla: viene restituita una stringa di testo vuota.
Nel codice di esempio qua sopra, la stringa di testo restituita viene quindi assegnata alla variabile response prima che il programma continui ad essere eseguito.
Esempio 2
' Richiede un riferimento
Dim response As String
response = InputBox( "Inserisci un riferimento per il set di dati corrente", "Richiesta di riferimento", "Rif" )
' La stringa "response" ora contiene l'input dell'utente (oppure
' una stringa vuota se è stato selezionato il pulsante Annulla).
Il codice qua sopra mostra all’utente la seguente casella di input:
Si noti che nel codice VBA qua sopra:
- L’argomento [Title] è “Richiesta di riferimento”. Questo viene visualizzato nella parte superiore della finestra di dialogo.
- L’argomento [Default] fornito è la stringa di testo “Rif”. Questa stringa viene visualizzata come valore predefinito nel campo di testo della casella di input.
- Anche qui, quando l’utente seleziona uno dei pulsanti della finestra di dialogo, la funzione InputBox restituisce una stringa di testo, come segue:
- Se si seleziona il pulsante OK: viene restituita la stringa di testo immessa nella finestra di dialogo;
- Se si seleziona il pulsante Annulla: viene restituita una stringa di testo vuota.