Word Belgelerini Toplu Düzenle – Stil ve Yazı Tipini Tek Tuşla Değiştir! (VBA Makrosu)

Bu yazıda karşılaştığım bir problemi ve bunun için bulduğum pratik çözümü paylaşmak istiyorum. Özellikle ofis işleriyle, eğitim dökümanlarıyla veya belge düzenlemeyle uğraşanlar bu durumu iyi bilir.

Klasörünüzde yüzlerce Word belgesi olur. Her biri zamanında farklı kişilerce hazırlanmıştır. Yazı tipi farklıdır, boyutu farklıdır, hatta bazen biri Arial 11, diğeri Times New Roman 14 olabilir. İşin kötü tarafı, bu belgeleri tek tek açıp düzenlemek büyük zaman kaybıdır. Ben de bu durumla karşılaştım.

Bir çözüm ararken dedim ki, Word’ün içinde bunun için bir araç olmalı. Ve evet, varmış. Microsoft Word’ün içinde yer alan VBA (Visual Basic for Applications) özelliği ile bu işi otomatikleştirmek mümkün.

Ben de basit bir makro yazdım. Bu makro sayesinde, belirlediğim klasördeki tüm Word dosyaları açılıyor, içerisindeki tüm yazılar belirlediğim yazı tipi ve boyuta göre düzenleniyor, ardından belgeler kaydedilip kapanıyor. Hepsi arka planda, sessiz sedasız yapılıyor. Ve birkaç dakika içinde yüzlerce belge aynı stile kavuşuyor.

Ne İşe Yarıyor?

  • Zaman kazandırıyor.

  • Yazı tipinde ve boyutunda tutarlılık sağlıyor.

  • Elle yapılan hataları ortadan kaldırıyor.

  • Süreci otomatikleştirerek yorucu bir işi kolaylaştırıyor.

Nasıl Yapılır?

Öncelikle Word’ü açtıktan sonra ALT + F11 tuşlarına basarak VBA editörüne geçiyorsunuz.
Sol tarafta boş bir alana sağ tıklayıp Insert > Module diyerek yeni bir modül açıyorsunuz.
Sonra aşağıdaki kodu olduğu gibi yapıştırıyorsunuz:

Sub TumKlasorlerdeFontDegistir()
Dim anaKlasor As String
Dim toplamDosya As Long

anaKlasor = "C:\Users\İbrahim Tonca\Desktop\HikayeKlasorleri\"
toplamDosya = 0

AltKlasorTara anaKlasor, toplamDosya

MsgBox toplamDosya & " belge başarıyla güncellendi!", vbInformation
End Sub

Sub AltKlasorTara(ByVal klasorYolu As String, ByRef sayac As Long)
Dim fso As Object
Dim klasor As Object
Dim altKlasor As Object
Dim dosya As Object
Dim doc As Document

Set fso = CreateObject("Scripting.FileSystemObject")
Set klasor = fso.GetFolder(klasorYolu)

For Each dosya In klasor.Files
If LCase(fso.GetExtensionName(dosya.Name)) = "docx" Then
Set doc = Documents.Open(dosya.Path, ReadOnly:=False)
With doc.Content
.Font.Name = "Segoe UI"
.Font.Size = 15
End With
doc.Save
doc.Close
sayac = sayac + 1
End If
Next

For Each altKlasor In klasor.SubFolders
AltKlasorTara altKlasor.Path, sayac
Next
End Sub

Bu makro çalıştığında, verdiğiniz klasörün içindeki ve alt klasörlerindeki tüm .docx uzantılı dosyalar düzenlenmiş olur.

Dikkat Edilmesi Gerekenler

  • Belgeler .docx uzantılı olmalı. Eski .doc uzantılı belgeler için bu kod işe yaramaz.
  • Klasör yolunu kendi bilgisayarınıza göre güncellemelisiniz.

Nerelerde Kullanılır?

Ben bu sistemi özellikle çok sayıda öğrenci belgesi, rapor, eğitim notu ya da kurumsal belge düzenlemesi gibi alanlarda kullandım. Daha önce saatler alan bir iş, artık birkaç dakikada bitiyor.

Sonuç

Tek tek dosya açmadan, tek tuşla yazı tipi ve boyutlarını değiştirmek mümkün. Bu tür küçük otomasyonlar, zaman kazandırdığı gibi işleri çok daha düzenli hale getiriyor. Word ile çalışan herkesin bu tür çözümleri öğrenmesi faydalı olur.

Ben kullandım, memnun kaldım. Umarım sizde de işe yarar.

Yorum

Henüz yorum yok. Neden tartışmaya başlamıyorsunuz?

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir