Bu yazıda, bir belgeyi kapatmadan önce tüm alanları otomatik olarak güncellemenin yolunu açıklamaya odaklanacağız.
Verilerin daha sonra değişebileceği durumlarda, bu verileri saklamak için alanlar kullanırız. Dolayısıyla, bu alanlarda bir değişiklik yaptığımızda, alanları da buna göre güncellememiz gerekir. Ve ne yazık ki, çoğu zaman bunları manuel olarak güncellememiz gerekecektir.
Ayrıca, en büyük sorun, alanları güncellemeyi kolayca unutabilmemizdir. Bu sorunu çözmek için, belgeyi kapatmadan önce alanları otomatik olarak güncellemeniz için size bir makro sunuyoruz.
Yazdırmadan Önce Tüm Alanları Güncelleyin
Aşağıdaki adımlarla yazdırmadan önce güncelleme alanlarını ayarlamak için Word seçeneklerini değiştirebilirsiniz:
- İlk olarak, “Dosya” sekmesine ve ardından “Seçenekler” e tıklayın.
- Sonraki “Kelime Seçenekleri” kutusunda açık, sol sütundaki “Göster” e tıklayın.
- Sağ kısımda “Yazdırma seçenekleri” kısmına giderek “Yazdırmadan önce alanları güncelle” kutusunu işaretleyin.
- Son olarak, "Tamam" ı tıklayın.
Belgeyi Kapatmadan Önce Tüm Alanları Otomatik Güncelle
- Başlamak için, "Alt + F11" tuşlarına basarak Word'deki VBA düzenleyicisini tetikleyin.
- Ardından “Normal” projesine tıklayın.
- Ardından menü çubuğunda "Ekle" yi tıklayın.
- Ve “Sınıf Modülü”nü seçin.
- Ardından, menü çubuğundaki "Özellikler Penceresi" komutunu tıklayın veya tetiklemek için "F4" tuşuna basın.
- Sol alt köşede açılan pencerede, yeni oluşturulan sınıf modülünü “objWordClass” olarak adlandırın.
- Kodlama alanına aşağıdaki kodları girin:
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
- Ve "Kaydet" düğmesini tıklamayı unutmayın.
- Şimdi hala “Normal” proje altında, tekrar “Ekle”ye tıklayın ve bu sefer “Modül”ü seçin.
- Sonraki modülü açın ve şu kodları yapıştırın:
Option Explicit Dim objWordClass As New objWordClass Public Sub AutoOpen() Set objWordClass.objWord = Word.Application End Sub
- Benzer şekilde, kodları kaydedin.
- Bir dahaki sefere bir belgeyi düzenlemeyi bitirdiğinizde kaydedin. Ve “Kapat” komutunu tıkladığınızda, sorma kutusunu alacaksınız. Tüm alanları güncellemek için “Evet”e tıklayın ve görev tamamlandığında belge kapatılacaktır.
Ölü Belgeyi Hayata Geri Getirin
Word'ü kullanırken ara sıra bazı sorunlarla karşılaşmak kaçınılmazdır. Bu nedenle, olası herhangi bir duruma hazırlıklı olmanız önerilir. hasarlı doktor. En iyi yol, elbette, önceden özel bir tamir aleti almaktır.
Yazar Tanıtımı:
Vera Chen bir veri kurtarma uzmanıdır. DataNumendahil olmak üzere veri kurtarma teknolojilerinde dünya lideri olan , Inc. Excel'i onar hem de pdf onarım yazılım ürünleri. Daha fazla bilgi için ziyaret edin www.datanumen.com




