Witajcie przyjaciele,
Wiem, że są fora poświęcone Excelowi, ale ja próbuję szczęścia na Lynkoa, bo widzę, że są koneserzy i poza tym nie znam się zbytnio na makro.
Celem tego makra jest to, że uruchamia się ono po otwarciu pliku i po pewnym czasie bezczynności pliku jest zapisywane i zamykane. Jest kilku z nas, którzy używają tego pliku i na różnych stronach, a ponadto regularnie opuszczamy nasze stacje robocze, więc jeśli jeden z nas zapomni go opuścić, denerwuje to pozostałych.
Z GÓRY DZIĘKUJĘ ZA ODPOWIEDZI ^_^
Dziękuję d.roger, zobaczę, czy dam radę i czy coś rozumiem.
Oto plik, który powinien zamknąć się po 30 sekundach bez dotykania go (przynajmniej u mnie działa).
Użyłem w ThisWorkbook:
Sub Workbook_open()
Licznik = 0
Arkusz1.Tempo
Koniec subwoofera
A w Feuil1:
Przyciemnij licznik jako liczbę całkowitą
Sub Tempo()
Application.OnTime Now + TimeValue("00:00:01"), "Arkusz1.mojeMakro"
Koniec subwoofera
Sub myMacro()
Licznik = Licznik + 1
Jeśli licznik = 30, to
Skoroszyty ("Test.xlsm skoroszyt". Zapisać
Aktywny skoroszyt.Zamknij
Wyjdź z subwoofera
Zakończ jeżeli:
Arkusz1.Tempo
Koniec subwoofera
Sub Worksheet_Change(ByVal Target As Range)
Jeśli Target.Count = 0, to
Licznik = 0
Arkusz1.Tempo
Zakończ jeżeli:
Koniec subwoofera
Oczywiście to tylko test, więc aby sprawdzić, poprawić itp
Pozdrowienia
classeur_test.xlsm
Niektóre zmiany po różnych testach:
Użyłem w ThisWorkbook:
Sub Workbook_open()
Licznik = 0
Arkusz1.Tempo
Koniec subwoofera
A w Feuil1:
Przyciemnij licznik jako liczbę całkowitą
Sub Tempo()
Application.OnTime Now + TimeValue("00:01:00"), "Arkusz1.mojeMakro"
Koniec subwoofera
Sub myMacro()
Licznik = Licznik + 1
Jeśli licznik = 10, to
Skoroszyty ("Test.xlsm skoroszyt". Zapisać
Aktywny skoroszyt.Zamknij
Wyjdź z subwoofera
Zakończ jeżeli:
Arkusz1.Tempo
Koniec subwoofera
Sub Worksheet_Change(ByVal Target As Range)
Jeśli Target.Count <> 0, to
Licznik = 0
Zakończ jeżeli:
Koniec subwoofera
Główne zmiany dotyczą funkcji Worksheet_Change, w której If Target.Count = 0 staje się If Target.Count <> 0, a także usunięcie linii Sheet1.Tempo.
Pozdrowienia
classeur_test.xlsm
Nie rozumiem, nie mogę tego zrobić... Kiedy otwieram twój plik Excela, błędy ...
enregistrement_et_fermeture_du_fichier_en_cas_dinactivite_pendant_10.jpg
Potem powiedział mi, że wskazówka nie należy do wyboru
lindice_nappartient_pas_a_le_selection.png
Wiadomość, której nigdy nie otrzymałem podczas moich testów, korzystam z programu Excel 2010. Nie wiem, czy to może mieć wpływ.
Kod końcowy:
Użyłem w ThisWorkbook:
Sub Workbook_open()
Licznik = 0
Arkusz1.Tempo
Koniec subwoofera
A w Feuil1:
Przyciemnij licznik jako liczbę całkowitą
Sub Tempo()
Application.OnTime Now + TimeValue("00:01:00"), "Arkusz1.mojeMakro"
Koniec subwoofera
Sub myMacro()
Licznik = Licznik + 1
Jeśli licznik = 10, to
Skoroszyty(ThisWorkbook.Name). Zapisać
Aktywny skoroszyt.Zamknij
Wyjdź z subwoofera
Zakończ jeżeli:
Arkusz1.Tempo
Koniec subwoofera
Sub Worksheet_Change(ByVal Target As Range)
Jeśli Target.Count <> 0, to
Licznik = 0
Zakończ jeżeli:
Koniec subwoofera
classeur_test.xlsm
2 polubienia