/ / Zapamiętana procedura działa w tle? - excel, vba, excel-vba

Przechowywana procedura działa w tle? - excel, vba, excel-vba

Uruchomię procedurę przechowywaną, aby pobrać dane zserwer, który zajmuje około 10-15 minut. Podczas uruchamiania procedury składowanej mój skoroszyt programu Excel zawiesza się, dopóki wszystkie dane nie zostaną zwrócone. Mogę mieć opcję uruchomienia tej procedury przechowywanej w tle, pozwalając jednocześnie na działanie skoroszytu programu Excel. Chodzi o to, aby dać użytkownikowi możliwość pracy w skoroszycie podczas pobierania danych zamiast czekać 10–15 minut tylko na przeglądanie arkusza.

Moje pytanie: Nigdy wcześniej nie widziałem tego pomysłu w żadnej innej aplikacji. Nie wiem, czy to oznacza standard dobrej praktyki. Załadowanie bazy danych podczas pracy w tym samym skoroszycie i po zakończeniu danych ostrzega użytkownika, że ​​wszystkie dane przeszły.

Co myślicie? Czy uważasz, że może to skomplikować coś innego?

Nie podoba mi się ten pomysł, ale użytkownik nie straciłby 10-15 minut.

Dziękuję wam wszystkim :)

Odpowiedzi:

0 dla odpowiedzi № 1

Musisz utworzyć instancję programu Exceli uruchom tam swoją procedurę stpred. W takim przypadku aplikacja Excel będzie nadal dostępna dla użytkownika, jednak oczekuję, że będzie ona powolna. Musisz zmodyfikować kod VBA, aby uruchomić go w nowej instancji aplikacji Excel:

dim xlApp as Excel.Application
set xlApp=New Excel.Application

więc tutaj, aby zrobić swoje rzeczy, musisz również wspomnieć o aplikacji, ponieważ masz teraz więcej niż jedną aktywną aplikację. Na przykład, aby utworzyć nowy skoroszyt, należy:

xlApp.Workbooks.Add

Myślę, że prawdopodobnie możesz otworzyć nową instancjęExcel ręcznie, a następnie otwórz skoroszyt zawierający kod VBA za pomocą OPEN z zakładki FILE, a następnie uruchom swój kod, w takim przypadku domyślna aplikacja Excel będzie dostępna dla użytkownika do pracy. Aby otworzyć nowe wystąpienie programu Excel, przytrzymaj klawisz SHIFT w dół i kliknij ikonę aplikacji Excel (w menu startowym lub na pulpicie itp., Jeśli nie wiesz, gdzie możesz go znaleźć, przejdź do menu Start systemu Windows i wyszukaj EXCEL)

Mam nadzieję że to pomoże!