Procedura dettagliata: raccolta di dati tramite Windows Form
Aggiornamento: novembre 2007
In questa procedura dettagliata viene spiegato come aprire un Windows Form da una personalizzazione a livello di documento per Microsoft Office Excel, raccogliere le informazioni dall'utente e scriverle in una cella del foglio di lavoro.
Sebbene in questa procedura dettagliata si utilizza un progetto a livello di documento specificamente per Excel, i concetti illustrati sono applicabili ad altri progetti Visual Studio Tools per Office.
Prerequisiti
Per completare questa procedura dettagliata, è necessario disporre dei seguenti componenti:
Visual Studio Tools per Office (componente facoltativo di Visual Studio 2008 Professional e Visual Studio Team System).
Microsoft Office Excel 2003 o Microsoft Office Excel 2007.
Visual Studio Tools per Office viene installato per impostazione predefinita con le versioni di Visual Studio elencate. Per controllare se è installato, vedere Installazione di Visual Studio Tools per Office.
![]() |
---|
Il computer potrebbe mostrare nomi o percorsi diversi per alcuni elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti. L'edizione di Visual Studio in uso e le impostazioni utilizzate determinano questi elementi. Per ulteriori informazioni, vedere Impostazioni di Visual Studio. |
Creazione di un nuovo progetto
Il primo passaggio consiste nella creazione di un progetto Cartella di lavoro di Excel.
Per creare un nuovo progetto
Creare un progetto Cartella di lavoro di Excel con nome WinFormInput e selezionare Crea un nuovo documento nella procedura guidata. Per ulteriori informazioni, vedere la classe Procedura: creare progetti Visual Studio Tools per Office.
La nuova cartella di lavoro di Excel viene aperta nella finestra di progettazione di Visual Studio e il progetto WinFormInput viene aggiunto in Esplora soluzioni.
Aggiunta di un controllo NamedRange al foglio di lavoro
Per aggiungere un intervallo denominato a Sheet1
Selezionare la cella A1 in Sheet1.
Nella casella Nome, digitare formInput.
La casella Nome si trova a sinistra della barra della formula, sopra la colonna A del foglio di lavoro.
Premere INVIO.
Un controllo NamedRange viene aggiunto nella cella A1. Sul foglio di lavoro non sono presenti indicazioni visibili, ma nella casella Nome (al di sotto del foglio di lavoro sul lato sinistro) e nella finestra Proprietà viene visualizzato formInput quando la cella A1 viene selezionata.
Aggiunta di Windows Form al progetto
Creare un controllo Windows Form per richiedere informazioni all'utente.
Per aggiungere un controllo Windows Form
Selezionare il progetto WinFormInput in Esplora soluzioni.
Scegliere Aggiungi Windows Form dal menu Progetto.
Assegnare al form il nome GetInputString.vb o GetInputString.cs, quindi scegliere Aggiungi.
Il nuovo form verrà aperto nella finestra di progettazione.
Scegliere il pulsante, individuare la proprietà Text nella finestra Proprietà, quindi modificare il testo in OK.
Aggiungere quindi codice a ThisWorkbook.vb o ThisWorkbook.cs per raccogliere le informazioni relative all'utente.
Visualizzazione di Windows Form e raccolta di informazioni
Creare un'istanza del controllo Windows Form GetInputString e visualizzarla, quindi scrivere le informazioni relative all'utente in una cella del foglio di lavoro.
Per visualizzare il form e raccogliere informazioni
Fare clic con il pulsante destro del mouse su ThisWorkbook.vb o ThisWorkbook.cs in Esplora soluzioni e selezionare Visualizza codice.
Nel gestore eventi Open di ThisWorkbook, aggiungere il codice riportato di seguito per dichiarare una variabile per il form GetInputString e visualizzare il form.
Nota:
In C#, è necessario aggiungere un gestore eventi, come mostrato nell'evento Startup che segue. Per ulteriori informazioni sulla creazione di gestori eventi, vedere Procedura: creare gestori eventi in Visual Studio Tools per Office.
Private Sub ThisWorkbook_Open() Handles Me.Open Dim inputForm As New GetInputString() inputForm.Show() End Sub
private void ThisWorkbook_Startup(object sender, System.EventArgs e) { this.Open += new Microsoft.Office.Interop.Excel.WorkbookEvents_OpenEventHandler(ThisWorkbook_Open); } private void ThisWorkbook_Open() { GetInputString inputForm = new GetInputString(); inputForm.Show(); }
Creare un metodo denominato WriteStringToCell, che consente di scrivere testo in un intervallo denominato. Tale metodo viene chiamato dal form e l'input utente viene passato al controllo NamedRange, formInput, posizionato sulla cella A1.
Public Sub WriteStringToCell(ByVal formData As String) Globals.Sheet1.formInput.Value2 = formData End Sub
public void WriteStringToCell(string formData) { Globals.Sheet1.formInput.Value2 = formData; }
Aggiungere quindi al form il codice per la gestione dell'evento Click del pulsante.
Invio di informazioni al foglio di lavoro
Per inviare informazioni al foglio di lavoro
In Esplora soluzioni fare clic con il pulsante destro del mouse su GetInputString, quindi scegliere Progettazione visualizzazioni.
Fare doppio clic sul pulsante per aprire il file di codice contenente il gestore eventi Click del pulsante aggiunto.
Aggiungere il codice al gestore eventi per estrarre l'input dalla casella di testo, inviarlo alla funzione WriteStringToCell, quindi chiudere il form.
Globals.ThisWorkbook.WriteStringToCell(Me.TextBox1.Text) Me.Dispose()
Globals.ThisWorkbook.WriteStringToCell(this.textBox1.Text); this.Dispose();
Test
È ora possibile eseguire il progetto. Il Windows Form viene visualizzato e l'input è presente nel foglio di lavoro.
Per testare la cartella di lavoro
Premere F5 per eseguire il progetto.
Verificare che il controllo Windows Form venga visualizzato.
Digitare Hello World nella casella di testo e scegliere OK.
Assicurarsi che il testo Hello World sia visualizzato nella cella A1 del foglio di lavoro.
Passaggi successivi
In questa procedura dettagliata vengono fornite le informazioni di base sulla visualizzazione di un controllo Windows Form e sul passaggio di dati a un foglio di lavoro. Altre attività che è possibile eseguire includono:
Utilizzare i controlli Windows Form in una cartella di lavoro di Excel o un documento di Word. Per ulteriori informazioni, vedere la classe Cenni preliminari sui controlli Windows Form nei documenti di Office.
Modificare l'interfaccia utente di un'applicazione di Microsoft Office da una personalizzazione a livello di documento o un componente aggiuntivo a livello di applicazione. Per ulteriori informazioni, vedere Personalizzazione dell'interfaccia utente di Office.
Vedere anche
Attività
Procedura: interagire con Windows Form
Concetti
Modello di programmazione per le soluzioni Office
Programmazione di componenti aggiuntivi a livello di applicazione
Programmazione delle personalizzazioni a livello di documento
Procedure dettagliate con Word