Visual Studio Tools for Office (VSTO) to platforma, która umożliwia tworzenie rozszerzeń dla aplikacji Microsoft Office, takich jak Excel, Outlook, Word czy PowerPoint, za pomocą języków programowania .NET, takich jak C#. W tym artykule omówimy podstawy tworzenia prostych dodatków (add-in) dla Excel’a i Outlook’a, które mogą ułatwić pracę poprzez automatyzację zadań i integrację z innymi aplikacjami.
Czym jest VSTO?
VSTO pozwala programistom na pisanie niestandardowych rozwiązań dla aplikacji Microsoft Office poprzez dodawanie własnych funkcji, automatyzację procesów, a także integrację z zewnętrznymi serwisami i systemami. VSTO różni się od klasycznych makr w VBA (Visual Basic for Applications) tym, że jest bardziej zaawansowany, lepiej zintegrowany z technologiami .NET oraz oferuje większe możliwości w zakresie rozbudowy interfejsu i logiki biznesowej.
Co będzie potrzebne?
Aby rozpocząć pracę z VSTO, potrzebujesz:
- Visual Studio (w wersji Community lub wyższej) – środowiska programistycznego Microsoft.
- Zainstalowanych narzędzi VSTO – te narzędzia są wbudowane w Visual Studio, ale należy wybrać odpowiednie komponenty podczas instalacji.
- Microsoft Office (Excel i Outlook) – programy, dla których będziemy tworzyć rozszerzenia.
Tworzenie prostego add-in dla Excel’a
Krok 1: Utworzenie nowego projektu VSTO
Otwórz Visual Studio i wybierz opcję „Tworzenie nowego projektu”.
Wyszukaj szablon „Add-in dla programu Excel” (Excel VSTO Add-in) i wybierz go.
Nadaj projektowi nazwę i określ lokalizację na dysku, a następnie kliknij „Utwórz”.
Krok 2: Struktura projektu
Projekt VSTO dla Excel’a składa się z dwóch głównych plików:
Krok 3: Dodawanie funkcji
W pliku ThisAddIn.cs
znajdziesz dwie domyślne metody: ThisAddIn_Startup
i ThisAddIn_Shutdown
, które odpowiadają za uruchamianie i zamykanie dodatku. Przykład prostego kodu, który doda nowy przycisk w Excel’u i wykona prostą operację (np. wpisanie tekstu do komórki A1)
private void ThisAddIn_Startup(object sender, System.EventArgs e) { Excel.Worksheet sheet = this.Application.ActiveSheet; sheet.Cells[1, 1].Value = "Hello, Excel!"; }
Krok 4: Uruchomienie dodatku
Po zapisaniu projektu, uruchom go naciskając przycisk „Start” (lub klawisz F5). Visual Studio automatycznie uruchomi Excel’a i załaduje nasz dodatek. W komórce A1 powinien pojawić się tekst „Hello, Excel!”.
Tworzenie prostego add-in dla Outlook’a
Krok 1: Tworzenie projektu
Postępuj podobnie jak w przypadku Excel’a, ale tym razem wybierz szablon „Add-in dla programu Outlook” (Outlook VSTO Add-in).
Krok 2: Praca z elementami Outlook’a
Po utworzeniu projektu, znajdziesz plik ThisAddIn.cs
, który również zawiera metody ThisAddIn_Startup
i ThisAddIn_Shutdown
. Outlook oferuje bogate API do manipulacji skrzynką odbiorczą, wiadomościami oraz kontaktami. Przykład kodu, który wyświetli komunikat za każdym razem, gdy użytkownik odbierze nową wiadomość e-mail:
private Outlook.Items mailItems; private void ThisAddIn_Startup(object sender, System.EventArgs e) { Outlook.MAPIFolder inbox = this.Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox); mailItems = inbox.Items; mailItems.ItemAdd += new Outlook.ItemsEvents_ItemAddEventHandler(MailItem_Add); } private void MailItem_Add(object Item) { Outlook.MailItem mail = (Outlook.MailItem)Item; System.Windows.Forms.MessageBox.Show("Nowa wiadomość od: " + mail.SenderName); }
Krok 3: Testowanie dodatku
Uruchom projekt w Visual Studio. Otworzy się Outlook, a po odebraniu nowej wiadomości wyświetli się okno z informacją o nadawcy.
Rozbudowa dodatków
Stworzone dodatki można rozbudowywać, dodając kolejne funkcje:
- W Excel’u możesz automatyzować procesy przetwarzania danych, generować raporty lub integrować się z bazami danych.
- W Outlook’u możesz automatyzować obsługę skrzynki odbiorczej, wysyłać wiadomości na podstawie szablonów czy integrować Outlook’a z innymi aplikacjami.
Podsumowanie
VSTO to potężne narzędzie, które umożliwia tworzenie zaawansowanych dodatków dla aplikacji Microsoft Office, takich jak Excel i Outlook. W tym artykule zaprezentowaliśmy podstawy, od utworzenia prostego projektu po implementację pierwszych funkcji. Dzięki VSTO możesz zautomatyzować wiele procesów, co może znacznie zwiększyć efektywność pracy. Zachęcam do dalszego eksperymentowania i tworzenia bardziej zaawansowanych dodatków!
Wprowadzenie do programowania dodatków VSTO – Visual Studio (Windows) | Microsoft Learn