Udostępnij za pośrednictwem


Instruktaż: Dzwoniących kodu VBA w projekcie programu Visual Basic

W tym instruktażu przedstawiono sposób wywołanie metody dostosowywania poziomie dokumentu dla programu Microsoft Office Word języka Visual Basic kod Applications (VBA) w dokumencie.Procedura obejmuje trzy podstawowe kroki: dodać metodę do ThisDocument host element klasy, wystawiać metoda do kodu VBA i następnie wywołać metodę z kodu VBA w dokumencie.

Dotyczy: Informacje przedstawione w tym temacie dotyczą projektów na poziomie dokumentu dla następujących aplikacji: Excel 2013 i Excel 2010; Word 2013 i Word 2010. Aby uzyskać więcej informacji, zobacz Funkcje dostępne w aplikacji pakietu Office i typ projektu.

Chociaż użyto programu Word w szczególności pojęcia świadczy Instruktaż również dotyczą projektów na poziomie dokumentu dla programu Excel.

W tym instruktażu przedstawiono następujące zadania:

  • Tworzenie dokumentu, który zawiera kod języka VBA.

  • Ufanie lokalizację dokumentu za pomocą Centrum zaufania w programie Word.

  • Dodanie metody do ThisDocument host element klasy.

  • Wystawiając metoda do kodu VBA.

  • Wywołanie metody z kodu VBA.

[!UWAGA]

Komputer może pokazać różne nazwy lub lokalizacje dla niektórych użytkowników programu Visual Studio elementów interfejsu w poniższych instrukcji.Wydanie programu Visual Studio, że masz i ustawienia, które możesz używać określenia tych elementów.Aby uzyskać więcej informacji, zobacz Visual Studio, ustawienia.

łącze do wideo Aby wyświetlić pokrewne wideo demonstracyjne, zobacz jak zrobić I: wywołać VSTO kodu VBA?.

Wymagania wstępne

Potrzebne do przeprowadzenia tego instruktażu następujące składniki:

-

Wersja Visual Studio 2012 zawierająca narzędzia dla deweloperów pakietu Microsoft Office. Aby uzyskać więcej informacji, zobacz [Konfigurowanie komputera do opracowywania rozwiązań pakietu Office](bb398242\(v=vs.110\).md).
  • Word 2013or Word 2010.

Tworzenie dokumentu, który zawiera kod języka VBA

Pierwszym krokiem jest utworzenie dokumentu z włączoną obsługą makr, zawierający proste makro VBA.Dokument musi zawierać projekt VBA, aby utworzyć projekt programu Visual Studio, który jest oparty na tym dokumencie.W przeciwnym razie Visual Studio nie można zmodyfikować projekt VBA, aby włączyć kod VBA do montażu dostosowywania.

Jeśli masz już dokument, który zawiera kod VBA, którego chcesz użyć, możesz pominąć ten krok.

Aby utworzyć dokument zawierający kod VBA

  1. Uruchom program Word.

  2. Zapisuje aktywny dokument jako wyraz Dokument z włączoną obsługą makr (*.docm) o nazwie DocumentWithVBA.Zapisać go w dogodnej lokalizacji, takiej jak pulpit.

  3. Kliknij na Wstążce, autora kartę.

    [!UWAGA]

    Jeśli autora karta nie jest widoczna, najpierw należy wyświetlić.Aby uzyskać więcej informacji, zobacz Jak: Pokaż kartę Deweloper na Wstążce.

  4. W Kod grupy, kliknij przycisk programu Visual Basic.

    Otwiera edytor Visual Basic.

  5. W Projekt okno, kliknij dwukrotnie ThisDocument.

    Plik kodu dla ThisDocument otwiera obiekt.

  6. Dodaj następujący kod VBA w pliku kodu.Ten kod zawiera definicję funkcji prostego, który nic nie robi.Jedynym celem tej funkcji jest zapewnienie, że projekt VBA istnieje w dokumencie.Jest to wymagane do podjęcia kroków w tym instruktażu.

    Sub EmptySub()
    End Sub
    
  7. Zapisz dokument i zamknij program Word.

Tworzenie projektu

Teraz można utworzyć projekt na poziomie dokumentu dla programu Word, który używa wcześniej utworzony dokument z włączoną obsługą makr.

Aby utworzyć nowy projekt

  1. Start Visual Studio.

  2. Na pliku menu, wskaż Nowa, a następnie kliknij przycisk Projekt.Jeśli Twój IDE jest ustawiony do używania ustawienia programowania Visual Basic, na pliku menu, kliknij przycisk Nowy projekt.

  3. W okienku szablony, rozwiń węzeł programu Visual Basic, a następnie rozwiń węzeł Office i SharePoint.

  4. Wybierz Dodatki pakietu Office węzła.

  5. Zaznacz na liście szablonów projektu, Dokument programu Word 2010 lub Dokument programu Word 2013 projektu.

  6. W Nazwa wpisz CallingCodeFromVBA.

  7. Kliknij przycisk OK.

    Visual Studio Tools for Office Project kreatora otwiera.

  8. Wybierz skopiować istniejący dokumenti w pełną ścieżkę do istniejącego dokumentu określ lokalizację DocumentWithVBA dokument, który został utworzony wcześniej.Jeśli korzystasz z własnego dokumentu z włączoną obsługą makr, należy określić lokalizację tego dokumentu.

  9. Kliknij przycisk wykończenie.

    Visual StudioOtwiera DocumentWithVBA dokument w Projektancie i dodaje CallingCodeFromVBA projekt Solution Explorer.

Ufanie lokalizację dokumentu

Przed udostępnieniem kodu w swoje rozwiązanie do kodu VBA w dokumencie, musi ufać VBA w dokumencie, aby uruchomić.Aby to zrobić na kilka sposobów.Do wykonania tej procedury, ufa lokalizacji dokumentu, w Centrum zaufania w programie Word.

Aby ufać lokalizację dokumentu

  1. Uruchom program Word.

  2. Kliknij przycisk pliku kartę.

  3. Kliknij przycisk Opcje programu Word przycisk.

  4. W okienku Kategoria kliknij Centrum zaufania.

  5. W okienku szczegółów kliknij Ustawienia Centrum zaufania.

  6. W okienku Kategoria kliknij Zaufane lokalizacje.

  7. W okienku szczegółów kliknij Dodaj nową lokalizację.

  8. W Zaufanej lokalizacji w programie Microsoft Office okno dialogowe, przejdź do folderu, który zawiera projekt CallingCodeFromVBA.

  9. Wybierz podfoldery tej lokalizacji są także zaufane.

  10. W Zaufanej lokalizacji w programie Microsoft Office okno dialogowe, kliknij przycisk OK.

  11. W Centrum zaufania okno dialogowe, kliknij przycisk OK.

  12. W Opcje programu Word okno dialogowe, kliknij przycisk OK.

  13. Zamknij program Word.

Dodanie metody do klasy ThisDocument

Teraz, że projekt VBA jest skonfigurowana, dodać metodę do ThisDocument host klasy element, który można połączyć z kodu VBA.

Aby dodać metodę do klasy ThisDocument

  1. W Solution Explorer, kliknij prawym przyciskiem myszy projekcie ThisDocument.vb, a następnie kliknij przycisk Widok Kod.

    Projekcie ThisDocument.vb plik zostanie otwarty w edytorze kodu.

  2. Dodaj następującą metodę do ThisDocument klasy.Ta metoda tworzy tabelę o dwa wiersze i dwie kolumny na początku dokumentu.Parametry określić tekst, który jest wyświetlany w pierwszym wierszu.Później w tym instruktażu będą wywołać tę metodę z kodu VBA w dokumencie.

    Public Sub CreateTable(ByVal firstColumnHeader As String, _
        ByVal secondColumnHeader As String)
    
        Me.Paragraphs(1).Range.InsertParagraphBefore()
        Dim table1 As Word.Table = Me.Tables.Add(Me.Paragraphs(1).Range, 2, 2)
    
        With table1
            .Style = "Table Professional"
            .Cell(1, 1).Range.Text = firstColumnHeader
            .Cell(1, 2).Range.Text = secondColumnHeader
        End With
    End Sub
    
  3. Skompiluj projekt.

Wystawiając metoda do kodu VBA

Wystawiać CreateTable ustawić metody do kodu VBA w dokumencie, EnableVbaCallers właściwość dla ThisDocument element hosta do True.

Aby odsłonić metoda do kodu VBA

  1. W Solution Explorer, kliknij dwukrotnie projekcie ThisDocument.vb.

    DocumentWithVBA plik zostanie otwarty w projektancie.

  2. W Właściwości okno, wybierz EnableVbaCallers właściwość i zmień wartość na True.

  3. Kliknij przycisk OK w wiadomości, która jest wyświetlana.

  4. Skompiluj projekt.

Wywołanie metody z kodu VBA

Można teraz wywołać CreateTable metoda z kodu VBA w dokumencie.

[!UWAGA]

W tym instruktażu będą dodać kod języka VBA do dokumentu podczas debugowania projektu.Kod VBA, który można dodać do tego dokumentu zostanie zastąpiona przy następnym budowania projektu, ponieważ Visual Studio zastępuje dokument w folderze wyjściowym budować kopię dokumentu z folderu głównego projektu.Jeśli chcesz zapisać kod VBA, można skopiować go do dokumentu w folderze projektu.Aby uzyskać więcej informacji, zobacz Łączenie VBA i dostosowania na poziomie dokumentu.

Wywołanie metody z kodu VBA

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

  2. Na autora kartę w Kod grupy, kliknij przycisk programu Visual Basic.

    Otwiera edytor Visual Basic.

  3. Na wstawić menu, kliknij przycisk moduł.

  4. Dodaj następujący kod do nowego modułu.

    Ten kod wywołuje CreateTable metoda w zgromadzeniu dostosowywania.Makra uzyskuje dostęp do tej metody przy użyciu CallVSTOAssembly właściwość ThisDocument obiektu.Ta właściwość został wygenerowany automatycznie, po ustawieniu EnableVbaCallers właściwość wcześniej w tym instruktażu.

    Sub CreateTable()
        Call ThisDocument.CallVSTOAssembly.CreateTable("Employee Name", "Start Date")
    End Sub
    
  5. Naciśnij klawisz F5.

  6. Sprawdź, że nowa tabela została dodana do dokumentu.

  7. Zamknij program Word bez zapisywania zmian.

Następne kroki

Możesz się więcej o wywołanie kodu w rozwiązaniach dla pakietu Office z języka VBA w tych tematach:

Zobacz też

Zadania

Jak: narazić kodu VBA w projekcie programu Visual Basic

Jak: narazić kodu VBA w Visual C# projektu

Instruktaż: Wywołanie kodu z języka VBA w Visual C# projektu

Inne zasoby

Łączenie VBA i dostosowania na poziomie dokumentu

Dostosowania poziomu dokument programowania