MS Excel – uložení a zavření po nečinnosti

Pokud například v zaměstnání používáte tabulku excelu ve více lidech, určitě jste již narazili na problém, kdy jeden z uživatelů zapomene sešit zavřít a vy pak do něj nemáte přístup pro zápis. Ukážeme vám jednoduchý způsob, jak si v takovémto excelu naprogramovat automatické uložení a zavření po určité době nečinnosti.

V minulosti se to řešilo vytvořením sdíleného sešitu, ale tato funkce již není nadále podporována. Stále lze použít, ale některé funkce a možnosti ve sdíleném souboru již nejsou možné, například vkládání odkazů na externí zdroje.

Další možností je sdílení souboru na OneDrive nebo na jiných sharepointech, ale tato možnost se hodí spíše pro firemní účty, které mají sdílené úložiště na OneDrive.

V tomto článku vám popíšeme, jak si do vašeho excelovského souboru přidat funkci, která zajistí že pokud jej někdo zapomene zavřít, tak po nastavené době neaktivity (nepracuje s ním) bude sešit uložen a uzavřen.

 

Vytvoření makra pro automatické uložení a uzavření excelu

  1. Otevřete sešit Excelu, pro který chcete nastavit makro
  2. Stiskněte Alt + F11, otevře se vám editor maker
  3. Rozklikněte ThisWorkbook na levé straně okna, otevře se vám editor.
  4. Zkopírujte tento kód a vložte jej do okna pro kód
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
        Call TimeStop
    End Sub
     
    Private Sub Workbook_Open()
        Call TimeSetting
        MsgBox "POZOR: Sešit bude po 30 minutách neaktivity automaticky uložen a uzavřen"
    End Sub
     
    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
       Call TimeStop
       Call TimeSetting
    End Sub

  5. Kód obsahuje také funkci, která po otevření excelu zobrazí dialogové okno s hláškou POZOR: Sešit bude po 30 minutách neaktivity automaticky uložen a uzavřen. Můžete si hlášku jakkoliv upravit, jen nepoužívejte uvozovky.
  6. V horní nabídce zvolte Insert –> Module
  7. Vložte do okna modulu tento kód:
    Dim CloseTime As Date
    Sub TimeSetting()
        CloseTime = Now + TimeValue("00:30:01")
        On Error Resume Next
        Application.OnTime EarliestTime:=CloseTime, _
          Procedure:="SavedAndClose", Schedule:=True
    End Sub
    Sub TimeStop()
        On Error Resume Next
        Application.OnTime EarliestTime:=CloseTime, _
          Procedure:="SavedAndClose", Schedule:=False
     End Sub
    Sub SavedAndClose()
        ActiveWorkbook.Close Savechanges:=True
    End Sub

  8. Upravte si dobu, po jaké má být excel uzavřen v řádku 3 (formát „HH:MM:SS“)
  9. Nyní můžete Visual basic editor uložit disketou v horním panelu a zavřít křížkem.
  10. Uložte excel. Uložit jako –> sešit s podporou maker .xlsm
  11. Hotovo, nyní po otevření excelu se objeví upozornění že po zadané době neaktivity bude ukončen. Jakmile dosáhne neaktivita nastaveného limitu, sešit se uloží a zavře.
Tony
Author: Tony

Blogger, průměrný hokejista, špatný kytarista, vášnivý jedlík, milující otec dvou dětí, GEEK, někdy trošku NERD, nadšenec do DIY

 
Summary
MS Excel - automatické uložení a zavření po nečinnosti | Jak nastavit automatické zavření excelu
Title
MS Excel - automatické uložení a zavření po nečinnosti | Jak nastavit automatické zavření excelu
Description

Pokud například v zaměstnání používáte tabulku excelu ve více lidech, určitě jste již narazili na problém, kdy jeden z uživatelů zapomene sešit zavřít a vy pak do něj nemáte přístup pro zápis. Ukážeme vám jednoduchý způsob, jak si v takovémto excelu naprogramovat automatické uložení a zavření po určité době nečinnosti.

Sdílejte tento článek na sociálních sítích:
Thanks! You've already liked this
No comments