Ebben a cikkben a dokumentum bezárása előtti összes mező automatikus frissítésének kifejtésére összpontosítunk.
A mezőket olyan adatok tárolására használjuk, amelyek később változhatnak. Tehát, ha módosításokat végzünk rajtuk, a mezőket ennek megfelelően frissítenünk kell. Sajnos az esetek többségében manuálisan kell frissítenünk őket.
Emellett a legnagyobb probléma az, hogy könnyen elfelejtjük frissíteni a mezőket. A probléma megoldása érdekében felajánlunk egy makrót a mezők automatikus frissítéséhez a dokumentum bezárása előtt.
Nyomtatás előtt frissítse az összes mezőt
A következő lépésekkel módosíthatja a Word beállításait, és beállíthatja a frissítési mezőket a nyomtatás előtt:
- Először kattintson a „Fájl” fülre, majd az „Opciók” gombra.
- Ezután a „Word Options” mezőben kattintson a bal oldali oszlopban található „Megjelenítés” gombra.
- A jobb oldali részben lépjen a „Nyomtatási beállítások” részre, és jelölje be a „Mezők frissítése nyomtatás előtt” négyzetet.
- Végül kattintson az „OK” gombra.
Minden mező automatikus frissítése a dokumentum bezárása előtt
- Először indítsa el a VBA-szerkesztőt a Wordben az „Alt+F11” lenyomásával.
- Ezután kattintson a „Normál” projektre.
- Ezután a menüsorban kattintson a "Beszúrás" gombra.
- És válassza az „Osztálymodul” lehetőséget.
- Ezután kattintson a „Tulajdonságok ablak” parancsra a menüsorban, vagy nyomja meg az „F4” gombot az aktiváláshoz.
- A bal alsó sarokban megnyíló ablakban nevezze el az újonnan létrehozott osztálymodult „objWordClass”-nak.
- A kódolási területen írja be a következő kódokat:
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
- És ne felejtse el kattintani a „Mentés” gombra.
- Most még mindig a „Normál” projekt alatt kattintson ismét a „Beszúrás” gombra, és ezúttal válassza a „Modul” lehetőséget.
- Következő nyissa meg a modult, és illessze be ezeket a kódokat:
Option Explicit Dim objWordClass As New objWordClass Public Sub AutoOpen() Set objWordClass.objWord = Word.Application End Sub
- Hasonlóképpen mentse el a kódokat.
- Amikor legközelebb befejezi a dokumentum szerkesztését, mentse el. És amikor rákattint a „Bezárás” parancsra, megkapja a kérő mezőt. Kattintson az „Igen” gombra az összes mező frissítéséhez, és a dokumentum bezárásra kerül, amikor a feladat elkészült.
Keltsd vissza a Holt Dokumentumot az életbe
A Word használata közben időnként elkerülhetetlenül találkozhatunk problémákkal. Ezért tanácsos minden lehetségesre felkészülni sérült doki. A legjobb módszer természetesen az, ha előzetesen beszerez egy speciális javítószerszámot.
Szerző Bevezetés:
Vera Chen adat-helyreállítási szakértő DataNumen, Inc., amely világelső az adat-helyreállítási technológiák területén, beleértve javítás Excel és a pdf javító szoftvertermékek. További információért látogasson el www.datanumen.com




