Problem polega na tym ze blokujesz dostęp do pliku, dlatego da się
wywołać makro tylko za jego pierwszym otwarciu.
Plik uruchamiany jest w osobnej instancji to tez dodaj do kodu takie
linijki:
sourceWB.Close False
xlApp.Quit
trus napisał:
> Witam.
>
> Mam następujący problem.
> Uruchamiam z Outlooka makro ("wysyłanie_maila"):
>
> Sub włącz_makro_w_exelu()
>
> 'otiera plik xlsm i uruchamia makro "wysyłanie_maila"
>
> Dim xlApp As Object
> Dim sourceWB As Workbook
>
> Set xlApp = CreateObject("Excel.Application")
>
> With xlApp
> .Visible = True
> .EnableEvents = False
> End With
>
> Set sourceWB = Workbooks.Open("C:\Pulpit\kontakty.xlsm")
>
> On Error GoTo wyjdź
> xlApp.Run "wysyłanie_maila"
>
> xlApp = Nothing
>
> wyjdź:
> Exit Sub
>
> End Sub
>
>
> które otwiera plik "C:\Pulpit\kontakty.xlsm", wykonuje makro
> "wysyłanie_maila" i zamyka plik "kontakty.xlsm" bez zapisywania. Wszystko
> działa, ale niestety tylko raz. Po ponownej próbie uruchomienia
> powyższego kodu nic się nie dzieje (w Menadżerze Zadań Windows widać,
> że system "procesuje" plik EXCEL). Dodam, że po zresetowania makra w
> Outlooku wszystko wraca do normy i marko znów działa.
>
> Macie jakieś pomysły?
>
> --
>
> ----
> Wysłano z serwisu
www.outlook.pl
> Forum, artykuły, porady o MS Outlook.
----
Wysłano z serwisu
www.outlook.pl
Forum, artykuły, porady o MS Outlook.