Chciałbym użyć makra w vba w programie Excel, aby wyodrębnić plik podczas jego otwierania, zapisać go, a następnie zarchiwizować.
W tej chwili wiem, jak wyodrębnić plik za pomocą makra (z unlock_file) to samo do archiwizacji, ale nie wiem, jak wyodrębnić otwarty plik i zarchiwizować ten sam plik. Plik jest otwarty i nie można go zarchiwizować.
Myślę, że istnieje rozwiązanie, ponieważ mam dodatek Enterprise PDM, który pozwala mi to zrobić za pomocą jednego kliknięcia.
Czy masz jakieś pomysły na wygenerowanie tego kodu?
Witam, mogę źle zrozumieć pytanie, ale po co to robić? Możesz po prostu "rozpakować", a następnie "zarchiwizować" bezpośrednio ze skarbca. W przeciwnym razie w Solid możesz wybrać, że pliki są wyodrębniane zaraz po ich otwarciu!. Po co otwierać plik, rozpakowywać go, zapisywać, a następnie archiwizować??? Wiedząc, że zapisanie go spowoduje utworzenie tylko lokalnego pliku na twoim komputerze, nic więcej.
Z Excela niemożliwe. Gdy tylko plik zostanie otwarty w aplikacji (niezależnie od tego, czy jest to oprogramowanie programowe, czy coś innego, w zależności od plików), repozytorium zabroni wszelkich działań.
Działają tylko funkcje dodatku w oprogramowaniu, jak wyjaśniono w G.
Jeśli zajdzie taka potrzeba polegająca na zmodyfikowaniu zmiennych i zastosowaniu ich do pliku, jest to możliwe, ale musisz postępować w następujący sposób:
Rozpakuj plik
Zaktualizuj żądane zmienne
Otwórz plik w oprogramowaniu
Zapisz go (odbuduj w razie potrzeby)
Zamknij plik
Archiwizuj plik z komentarzem
Wszystko to odbywa się z poziomu Excela.
W przeciwnym razie, bawiąc się Excelem i harmonogramem zadań SW, można w niego grać bez ograniczeń związanych z otwieraniem SW przez Excel.
Celem jest manipulowanie plikiem Excela, a nie plikiem oprogramowania.
Celem jest zmodyfikowanie pliku Excela, który pobiera zmienne z plików, które są do niego wklejone jako odniesienie, a następnie zapisanie tego pliku (aby to zrobić, musisz go rozpakować), a następnie zarchiwizowanie. Wszystko to automatycznie za pomocą makr we wspomnianym pliku Excel.
Muszę więc rozpakować plik Excela, gdy jest otwarty (udało mi się), ale chciałbym zarchiwizować ten sam plik.
Myślę, że jest to możliwe, ponieważ istnieje dodatek pdm do programu Excel, który to umożliwia.
Dodatki nie są dostępne przez vba, ale za pośrednictwem pełnoprawnych programów. Czyli z mojego punktu widzenia trzeba zrobić to co opisałem, ale podmieniwszy plik SW na plik excel i w ten sposób zarządzać w dwóch plikach.
Pierwszy z nich wyodrębnia plik Excela i otwiera go, uruchamia makro tego pliku, a następnie zamyka i archiwizuje.
Cyril.f, myślałem o tym rozwiązaniu. Chcę tego uniknąć. Jeśli jest to wykonalne z dodatkiem, powinno to być możliwe do zrobienia za pomocą VBA (bez konieczności uruchamiania dodatku), ale poprzez odtworzenie funkcji.