czwartek, 18 kwietnia 2013

Wyświetlanie strony www z poziomu VBA

Niniejsze rozwiązanie adresowane jest zarówno do użytkowników Excela jak i innych aplikacji pakietu MS Office. Zadanie jest następujące- jak z poziomu kodu VBA wyświetlić stronę internetową?

Rozwiązanie jest pozornie proste- oto dwa warianty dla MS Excel i MS Word:

1ActiveWorkbook.FollowHyperlink "http://www.szkoleniavba.pl"
2ActiveDocument.FollowHyperlink "http://www.szkoleniavba.pl"

Powyższy kod uruchomi wskazany link w domyślnej przeglądarce na naszym komputerze.
Co jednak, gdy nie mamy w danym momencie otwartego żadnego skoroszytu lub dokumentu?

Z pomocą może przyjść rozwiązanie, które tworzy referencje do aplikacji Internet Explorer, uruchamia ją, wyświetla link. Tu problemem jest więc fakt, że niekoniecznie IE jest naszą domyślną i ulubioną przeglądarką. Kod VBA wygląda następująco:

1Dim ieAPP
2Set ieAPP = CreateObject("InternetExplorer.application")
3ieAPP.Visible = True
4ieAPP.navigate "http://www.szkoleniavba.pl"

Pełny wariant rozwiązania dla aplikacji Excel,, który za priorytet uznaje pierwszą z metod wyglądać będzie więc tak:
01Sub FallowingHyperlink()
02    'sprawdzamy, czy istnieje jakikolwiek aktywny dokument
03    If Not ActiveWorkbook Is Nothing Then     
04        ActiveWorkbook.FollowHyperlink "http://www.szkoleniavba.pl"
05    Else 'jeżeli nie to sięgamy po wariant alternatywny
06        Dim ieAPP Set ieAPP = CreateObject("InternetExplorer.application")
07        ieAPP.Visible = True
08        ieAPP.navigate "http://www.szkoleniavba.pl"
09    End If
10End Sub

Brak komentarzy:

Prześlij komentarz