Procedura dettagliata: Raccogliere dati usando un Windows Form
Questa procedura dettagliata spiega 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.
Si applica a: le informazioni contenute in questo argomento si applicano ai progetti a livello di documento e ai progetti di componente aggiuntivo VSTO. Vedere Funzionalità disponibili per app Office lication e tipo di progetto.
Nonostante in questa procedura dettagliata venga usato un progetto a livello di documento in modo specifico per Excel, i concetti illustrati sono applicabili ad altri progetti di Office.
Prerequisiti
Per completare questa procedura dettagliata, è necessario disporre dei componenti seguenti:
Una versione di Visual Studio che include Microsoft Office Developer Tools. Per altre informazioni, vedere Configurare un computer per sviluppare soluzioni Office.
Excel 2013 o Excel 2010 .
Nota
I nomi o i percorsi visualizzati per alcuni elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti potrebbero essere diversi nel computer in uso. La versione di Visual Studio in uso e le impostazioni configurate determinano questi elementi. Per altre informazioni, vedere Personalizzare l'IDE di Visual Studio.
Crea 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 relativo a una cartella di lavoro di Excel denominato WinFormInpute selezionare Crea un nuovo documento nella procedura guidata. Per altre informazioni, vedere Procedura: creare progetti di Office in Visual Studio.
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.
Aggiungere 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.
Aggiungere un 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 modulo il nome GetInputString.vb o GetInputString.cs, quindi scegliere Aggiungi.
Il nuovo modulo verrà aperto nella finestra di progettazione.
Aggiungere al modulo una classe TextBox e una classe Button .
Scegliere il pulsante, trovare la proprietà Text nella finestra Proprietà , quindi modificare il testo in OK.
Aggiungere quindi codice a
ThisWorkbook.vb
oThisWorkbook.cs
per raccogliere le informazioni relative all'utente.
Visualizzare Windows Form e raccogliere 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 modulo e raccogliere informazioni
Fare clic con il pulsante destro del mouse su ThisWorkbook.vb o ThisWorkbook.cs in Esplora soluzionie selezionare Visualizza codice.
Nel gestore dell'evento Open di
ThisWorkbook
, aggiungere il codice riportato di seguito per dichiarare una variabile per il moduloGetInputString
e visualizzare il modulo.Nota
In C# è necessario aggiungere un gestore dell'evento, come mostrato nell'evento Startup che segue. Per informazioni sulla creazione di gestori eventi, vedere Procedura: Creare gestori eventi nei progetti di Office.
Creare un metodo denominato
WriteStringToCell
, che consente di scrivere testo in un intervallo denominato. Tale metodo viene chiamato dal modulo e l'input utente viene passato al controllo NamedRange ,formInput
, posizionato sulla cella A1.public void WriteStringToCell(string formData) { Globals.Sheet1.formInput.Value2 = formData; }
Aggiungere quindi al modulo il codice per la gestione dell'evento Click del pulsante.
Inviare 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 dell'evento Click del pulsante aggiunto.
Aggiungere il codice al gestore dell'evento per estrarre l'input dalla casella di testo, inviarlo alla funzione
WriteStringToCell
, quindi chiudere il modulo.
Test
A questo punto, puoi eseguire il progetto. 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 fare clic su OK.
Assicurarsi che il testo Hello World sia visualizzato nella cella A1 del foglio di lavoro.
Passaggi successivi
Questa procedura dettagliata fornisce 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:
Usare i controlli Windows Form in una cartella di lavoro di Excel o un documento di Word. Per altre informazioni, vedere panoramica dei controlli Windows Form nei documenti di Office.
Modificare l'interfaccia utente di un app Office cation Microsoft da una personalizzazione a livello di documento o da un componente aggiuntivo VSTO. Per altre informazioni, vedere Personalizzazione dell'interfaccia utente di Office.