Yeni belgeler yaratmak, kaydetmek ve kapatmak.
Word programını Application nesnesi aracılığıyla yönlendirebilirsiniz.
Application nesnesine ait Documents özelliğinden Word programında o an açık olan belgeler koleksiyonuna erişebilirsiniz.
Bu özellik aslında aynı adı taşıyan, Documents türü bir koleksiyon nesnesidir.
Başka koleksiyon nesnelerinde olduğu gibi, Documents nesnesi için de Add fonksiyonuyla ekleme yapabilirsiniz.
Bu fonksiyonu Application nesnesinin Documents özelliği üzerinde kullandığınızda yeni bir belge yaratmış olursunuz.
Documents koleksiyonundaki her bir belge Document türünden bir nesnedir.
Bir Document nesnesine ait SaveAs2 fonksiyonuyla belgeyi argüman olarak vereceğiniz bir adla kaydedebilirsiniz.
Siz sormadan açıklayalım: Evet, SaveAs adlı bir fonksiyon vardır, ama Word programının eski sürümleri içindir. Word 2007 ve sonraki sürümler için SaveAs2 fonksiyonunu tercih etmelisiniz.
Document nesnesine ait Close fonksiyonuyla da nesnenin temsil ettiği belgeyi kapatırsınız.
Bu fonksiyonun isteğe bağlı SaveChanges argümanıyla kapatılan belgedeki değişikliklerin kaydedilmesiyle ilgili tercihinizi belirtebilirsiniz. Bu argüman için WdSaveOptions adlandırılmış değerlerini kulanabilirsiniz:
wdSaveChanges seçeneğiyle değişiklikleri kaydedersiniz.
wdDoNotSaveChanges seçeneğiyle değişiklikleri kaydetmeyip, iptal edersiniz.
wdPromptToSaveChanges seçeneğiyle de değişiklerin kaydetme tercihini kullanıcıya bırakırsınız; SaveChanges argümanı için siz bir tercih belirtmemişseniz, bu seçenek geçerlidir.
Boş veya içeriği olan bir belgeye ait “ThisDocument” VBA projesinde bir altyordam yaratın.
Gerektiğinde bir belgeye erişmek için Document türü bir nesne tanımlayın:
Dim yeniBelge As Document
yeni bir belge yaratan bir fonksiyon çağrısı ekleyin:
Set yeniBelge = Application.Documents.Add
İsteğe bağlı olarak, yeni belgeye içerik ekleyecek bir komut ekleyin. Örneğin, altyordamın ait olduğu belge metnini yeni belgeye aktaran bir komut yazabilirsiniz:
yeniBelge.Content.Text = Me.Content.Text
Yeni belgeyi kendi belirlediğiniz bir adla saklamak için SaveAs2 fonksiyonunu kullanın:
yeniBelge.SaveAs2("AhadaIsteYeniBelge.docx")
Yeni belgeyi bir Close fonksiyonuyla kapatabilirsiniz:
yeniBelge.Close
Sırf deneme yapmak için dosya sisteminizi yeni yeni belge kopyalarıyla kirletmek istemezseniz, belge kaydedecek komutu atlayıp Close fonksiyonu çağrısına değişiklikleri iptal edecek argüman değerini verirsiniz:
yeniBelge.Close SaveChanges:= wdDoNotSaveChanges
Aşağıdaki altyordam ait olduğu belge içeriğini yeni yarattığı belgeye aktardıktan sonra yeni belgeyi kaydedip kapatacaktır.
Kaynak Dosya: “YeniBelgeYaratmakKaydetmekKapatmak.docm”
Unutmayın; kitap veya ekran satırına sığmayan komut satırları alta sarkmış olabilir. Siz onları tek satır olarak yazacaksınız!
Sub YeniBelgeYaratmakKaydetmekKapatmak()
Dim yeniBelge As Document
Set yeniBelge = Application.Documents.Add
yeniBelge.Content.Text = Me.Content.Text
yeniBelge.SaveAs2 ("AhadaIsteYeniBelge.docx")
yeniBelge.Close
End Sub