Udostępnij za pośrednictwem


Przewodnik: zbieranie danych przy użyciu formularza systemu Windows

W tym przewodniku pokazano, jak otworzyć formularz systemu Windows z dostosowania na poziomie dokumentu dla programu Microsoft Office Excel, zbierać informacje od użytkownika i zapisywać te informacje w komórce arkusza.

Dotyczy: informacje w tym temacie dotyczą projektów na poziomie dokumentu i projektów dodatków VSTO. Zobacz Funkcje dostępne według aplikacja pakietu Office lication i typu projektu.

Mimo że w tym przewodniku używany jest projekt na poziomie dokumentu dla programu Excel, koncepcje przedstawione w przewodniku mają zastosowanie do innych projektów pakietu Office.

Wymagania wstępne

Następujące składniki są wymagane do przeprowadzenia tego instruktażu:

Uwaga

Na komputerze w poniższych instrukcjach mogą być wyświetlane inne nazwy i lokalizacje niektórych elementów interfejsu użytkownika programu Visual Studio. Te elementy są określane przez numer wersji Visual Studio oraz twoje ustawienia. Aby uzyskać więcej informacji, zobacz Personalizowanie środowiska IDE programu Visual Studio.

Tworzenie nowego projektu

Pierwszym krokiem jest utworzenie projektu skoroszytu programu Excel.

Aby utworzyć nowy projekt

  1. Utwórz projekt skoroszytu programu Excel o nazwie WinFormInput i wybierz pozycję Utwórz nowy dokument w kreatorze. Aby uzyskać więcej informacji, zobacz Jak tworzyć projekty pakietu Office w programie Visual Studio.

    Program Visual Studio otwiera nowy skoroszyt programu Excel w projektancie i dodaje projekt WinFormInput do Eksplorator rozwiązań.

Dodawanie kontrolki NamedRange do arkusza

Aby dodać nazwany zakres do arkusza Sheet1

  1. Wybierz komórkę A1 na Sheet1.

  2. W polu Nazwa wpisz formInput.

    Pole Nazwa znajduje się po lewej stronie paska formuły tuż nad kolumną A arkusza.

  3. Naciśnij klawisz Enter.

    Kontrolka NamedRange jest dodawana do komórki A1. W arkuszu nie ma widocznego wskazania, ale funkcja formInput pojawia się w polu Nazwa (tuż nad arkuszem po lewej stronie) i w oknie Właściwości po wybraniu komórki A1 .

Dodawanie formularza systemu Windows do projektu

Utwórz formularz systemu Windows, aby monitować użytkownika o podanie informacji.

Aby dodać formularz systemu Windows

  1. Wybierz projekt WinFormInput w Eksplorator rozwiązań.

  2. W menu Project (Projekt) kliknij pozycję Add Windows Form (Dodaj formularz systemu Windows).

  3. Nadaj formularzowi nazwę GetInputString.vb lub GetInputString.cs, a następnie kliknij przycisk Dodaj.

    Nowy formularz zostanie otwarty w projektancie.

  4. Dodaj element TextBox Button i do formularza.

  5. Wybierz przycisk, znajdź właściwość Text w oknie Właściwości i zmień tekst na OK.

    Następnie dodaj kod do ThisWorkbook.vb lub ThisWorkbook.cs , aby zebrać informacje użytkownika.

Wyświetlanie formularza systemu Windows i zbieranie informacji

Utwórz wystąpienie GetInputString formularza systemu Windows i wyświetl go, a następnie zapisz informacje użytkownika w komórce w arkuszu.

Aby wyświetlić formularz i zebrać informacje

  1. Kliknij prawym przyciskiem myszy plik ThisWorkbook.vb lub ThisWorkbook.cs w Eksplorator rozwiązań, a następnie kliknij polecenie Wyświetl kod.

  2. W procedurze Open obsługi ThisWorkbookzdarzeń programu dodaj następujący kod, aby zadeklarować zmienną dla formularza GetInputString , a następnie wyświetlić formularz.

    Uwaga

    W języku C#należy dodać procedurę obsługi zdarzeń, jak pokazano w Startup poniższym zdarzeniu. Aby uzyskać informacje na temat tworzenia programów obsługi zdarzeń, zobacz Instrukcje: tworzenie programów obsługi zdarzeń w projektach pakietu Office.

    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.ShowDialog();
    }
    
  3. Utwórz metodę o nazwie WriteStringToCell , która zapisuje tekst w nazwanym zakresie. Ta metoda jest wywoływana z formularza, a dane wejściowe użytkownika są przekazywane do kontrolki NamedRange , formInputw komórce A1.

    public void WriteStringToCell(string formData)
    {
        Globals.Sheet1.formInput.Value2 = formData;
    }
    

    Następnie dodaj kod do formularza, aby obsłużyć zdarzenie kliknięcia przycisku.

Wysyłanie informacji do arkusza

Aby wysłać informacje do arkusza

  1. Kliknij prawym przyciskiem myszy polecenie GetInputString w Eksplorator rozwiązań, a następnie kliknij polecenie Wyświetl Projektant.

  2. Kliknij dwukrotnie przycisk, aby otworzyć plik kodu z dodanym programem obsługi zdarzeń przycisku Click .

  3. Dodaj kod do programu obsługi zdarzeń, aby pobrać dane wejściowe z pola tekstowego, wysłać go do funkcji WriteStringToCell, a następnie zamknąć formularz.

    Globals.ThisWorkbook.WriteStringToCell(this.textBox1.Text);
    this.Dispose();
    

Przetestuj

Teraz możesz uruchomić projekt. Zostanie wyświetlony formularz systemu Windows, a dane wejściowe pojawią się w arkuszu.

Aby przetestować skoroszyt

  1. Naciśnij klawisz F5 , aby uruchomić projekt.

  2. Upewnij się, że zostanie wyświetlony formularz systemu Windows.

  3. Wpisz Hello World w polu tekstowym, a następnie kliknij przycisk OK.

  4. Upewnij się, że element Hello World jest wyświetlany w komórce A1 arkusza.

Następne kroki

W tym przewodniku przedstawiono podstawy wyświetlania formularza systemu Windows i przekazywania danych do arkusza. Inne zadania, które warto wykonać, obejmują: