Mam konfigurację do wyświetlania pewnego rodzaju statusu / deski rozdzielczej, zasadniczo dziennika, który jest aktualizowany z innego komputera. Działa za pomocą Excela, jak poniżej:
- Ktoś dodaje dane do tabeli w „Log_Source.xlsx”, która znajduje się w udziale sieciowym, i zapisuje ją.
- Komputer deski rozdzielczej (którym jest Intel Compute Stick (Windows 10 Home) i monitor naścienny) ma plik lokalny „Log_Dashboard.xlsx” z połączeniem danych do pliku źródłowego w sieci. Zapytanie jest odświeżane co minutę. W ten sposób pulpit nawigacyjny może pobierać i wyświetlać dane, prawie w czasie rzeczywistym, bez blokowania pliku do edycji.
Problem:
Co kilka dni będę wyświetlał komunikat na pulpicie informujący, że nie można znaleźć źródła danych. I nie będzie już aktualizować danych. Zamykanie i ponowne otwieranie Log_Dashboard.xlsx naprawia to, ale jak mogę temu zapobiec?
Co próbowałem:
- W ustawieniach zasilania systemu Windows: zmieniono na plan wysokiej wydajności. Ustaw dysk twardy, aby nigdy się nie wyłączał. Ustaw opcję Wireless Adapter na Maximum Performance.
- Zaplanowano uruchamianie skryptu AutoHotKey co 12 godzin, który po prostu porusza myszą tam iz powrotem. Pomyślałem, że może to uniemożliwić przejście komputera w stan uśpienia, jeśli to byłby problem.
- Dodano makro do pliku Excel, który zamyka i otwiera go co godzinę. Ponieważ za każdym razem ręcznie naprawiam ten problem, pomyślałem, że to załatwi, ale nadal tak się dzieje.
Jakieś sugestie? Lub jeśli istnieje inne podejście do konfigurowania takiego wyświetlacza deski rozdzielczej, jestem otwarty na ... Dzięki.
microsoft-excel
query
dashboard
wysiwyg
źródło
źródło
Odpowiedzi:
Publikowanie tego, co dla mnie zadziałało, na wypadek, gdyby ktoś z podobnym problemem natknął się na to w przyszłości:
Nigdy nie byłem w stanie ustalić, dlaczego połączenie danych ciągle spada. Zmieniłem komputer „deski rozdzielczej” z Intel Compute Stick podłączonego do Wi-Fi na stary kompaktowy pulpit podłączony do sieci Ethernet. To nieco pomogło, ale nadal występowały spadki połączenia danych, a także inne błędy programu Excel, takie jak „Brak pamięci”.
Oto obejście, które w końcu zadziałało w mojej sytuacji:
Wstawiłem moduł do pliku Excel („Log_Dashboard.xlsm”) z następującym kodem:
To po prostu zapisuje skoroszyt, uruchamia polecenie powłoki, które wyświetla komunikat o ponownym uruchomieniu pulpitu nawigacyjnego (na wypadek, gdyby ktoś patrzył na ekran w tym momencie), a następnie ponownie otwiera plik Excel po odczekaniu kilku sekund, aż zostanie zamknięty . (
excel.exe
ścieżka pliku może wymagać zmiany, jeśli używasz innej wersji pakietu Office)Następnie umieszczam to w
ThisWorkbook
module:Po otwarciu pliku Excel ustawia się go w tryb pełnoekranowy, a następnie, po odczekaniu wstępnie zdefiniowanego czasu (tutaj 15 minut), wywołuje powyższe
WorkbookSaveCycle
makro. Co po prostu ponownie uruchamia cykl, zamykając i ponownie otwierając plik.Jestem pewien, że jest lepszy sposób, aby to zrobić, ale od czasu wprowadzenia tych zmian jest on zasadniczo solidny.
źródło