Jak automaticky aktualizovat všechna pole před zavřením dokumentu

Sdílej nyní:

V tomto článku se zaměříme na objasnění způsobu automatické aktualizace všech polí v dokumentu před jeho uzavřením.

Pole používáme k uchovávání dat, která se mohou později změnit. Jakmile v nich tedy provedeme nějakou změnu, musíme je odpovídajícím způsobem aktualizovat. A bohužel je většinou musíme aktualizovat ručně.

Kromě toho největší problém spočívá v tom, že můžeme snadno zapomenout na aktualizaci polí. Abychom tento problém vyřešili, nabízíme vám pole pro automatickou aktualizaci makra před uzavřením dokumentu.Automaticky aktualizovat všechna pole před zavřením dokumentu

Před tiskem aktualizujte všechna pole

Možnosti aplikace Word můžete před tiskem nastavit tak, aby byla nastavena pole aktualizace:

  1. Nejprve klikněte na záložku „Soubor“ a poté na „Možnosti“.
  2. Dále v poli „Možnosti aplikace Word“ klikněte na „Zobrazit“ v levém sloupci.
  3. V pravé části přejděte do části „Možnosti tisku“ a zaškrtněte políčko „Aktualizovat pole před tiskem“.
  4. Nakonec klikněte na „OK“.Klikněte na „Zobrazit“ -> Zaškrtněte „Aktualizovat pole před tiskem“ Pole-> Klikněte na „OK“

Automaticky aktualizovat všechna pole před uzavřením dokumentu

  1. Nejprve spusťte editor VBA v aplikaci Word stisknutím kláves „Alt + F11“.
  2. Dále klikněte na „Normální“ projekt.
  3. Poté na řádku nabídek klikněte na „Vložit“.
  4. A vyberte „Modul třídy“.Klikněte na „Normální“ -> Klikněte na „Vložit“ -> Vyberte „Modul třídy“
  5. Dále klikněte na příkaz „Okno Vlastnosti“ na liště nabídek nebo stiskněte „F4“ pro jeho spuštění.
  6. V okně otevřeném v levém dolním rohu pojmenujte nově vytvořený modul třídy jako „objWordClass“.
  7. V oblasti kódování zadejte následující kódy:
Option Explicit
Public WithEvents objWord As Word.Application
Private Sub objWord_DocumentBeforeClose(ByVal objDoc As Document, varCancel As Boolean)
  Dim strButtonValue As String

  Application.ScreenUpdating = False
  Set objDoc = ActiveDocument
  objDoc.Save
  strButtonValue = MsgBox("Do you want to update all fields in this document before closing?", _
                   vbYesNo + vbQuestion)
  If strButtonValue = vbYes Then
    varCancel = True
    If objDoc.Fields.Count > 0 Then
      With objDoc
        .Fields.Update
        .Save
        .Close
      End With
    Else
      MsgBox ("There is no field in this document.")
    End If
  Else
    varCancel = False
  End If

  Application.ScreenUpdating = True
End Sub
  1. A nezapomeňte kliknout na tlačítko „Uložit“.Klikněte na „Okno Vlastnosti“ -> Pojmenujte modul třídy-> Vložit kódy-> Uložit kódy
  2. Nyní stále v projektu „Normální“ znovu klikněte na „Vložit“ a vyberte tentokrát „Modul“.Klikněte na „Normální“ -> Klikněte na „Vložit“ -> Klikněte na „Modul“
  3. Dále otevřete modul a vložte tyto kódy:
Option Explicit
  Dim objWordClass As New objWordClass
  Public Sub AutoOpen()
  Set objWordClass.objWord = Word.Application
End Sub
  1. Podobně ukládejte kódy.
  2. Až příště dokončíte úpravy dokumentu, uložte jej. A když kliknete na příkaz „Zavřít“, zobrazí se dotazovací pole. Kliknutím na „Ano“ aktualizujete všechna pole a dokument bude po dokončení úkolu uzavřen.Klikněte na „Zavřít“ -> Klikněte na „Ano“ nebo „Ne“

Oživte mrtvý dokument

Při používání Wordu je nevyhnutelně občas narazit na nějaké problémy. Doporučuje se proto být na vše připraven poškozený doc. Nejlepším způsobem je samozřejmě předem získat specializovaný nástroj pro opravy.

Úvod autora:

Vera Chen je expertka na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně opravit Excel a pdf opravy softwarových produktů. Pro více informací navštivte www.datanumen.com

Sdílej nyní:

Komentáře jsou uzavřeny.