word nesnesinde açma-kapama makrosu

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Wordde açılış ve kapanışta makro çalıştırma...

Yazdığım makroların dosya açıldığında ya da kapanırken otomatik çalışmasını istiyorum. Giriş kodlarını yazabilir misiniz?
Saygılar...
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Merhaba;

Ekli dosyaya göz atınız...

.
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Teşekkür ederim. Yalnız bu kodları Excel içindeki word nesnesine uyguladığımda çalışmıyor. Bunun özel bir sebebi var mı? Ya da benim bilmediğim bir yolu mu var?
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Ben de denedim ama nedense olmuyor...

.
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Selamlar...
wordde açma-kapama makrosu AutoOpen ve AutoClose ile yapılabiliyor; fakat bu word nesnesinde çalışmıyor. word nesnesine bunu nasıl uyarlarız.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Merhaba;

Microsoft'un sitesinden inceledim, orada belirtildiğine göre; eğer içinde makrolar olan bir Word belgesi başka bir Ofis dokümanına örneğin bir Excel dokümanının içine gömüldüğünde, sözkonusu gömülü Word dokümanı açıldığında, içerisindeki Auto makrolarının çalıştırılması otomatik olarak engellenirmiş.

Sanıyorum, makro virüslere karşı Microsoft'un aldığı bir tedbir bu.

Ancak, bu konuyu Excel dokümanına yazılacak bir kodla halledebiliriz. Bunu ekli dosyada görebilirsiniz.

Ekli dosyada yapılan iş şudur;

1) Excel dosyasına ilgili Word dosyasını gömdüm. Gömülü Word dosyasında aşağıdaki kod var;

Kod:
Sub AutoOpen()
    MsgBox "Gömülü Word dosyası açıldı..."
End Sub
2) Word dosyasını Excel dosyasına gömdükten sonra, bu nesneyi "MyDoc" olarak adlandırdım. Adlandırmayı yapmak için, sayfa üzerindeki Word nesnesini fare tıklayarak seçtikten sonra Excel'in sol üst tarafındaki "Ad Kutusu" na "MyDoc" yazıp, farenin imleci kutunun içindeyken "Enter" tuşuna bastım.

3) Excel dokümanında bir modüle aşağıdaki kodu yerleştirdim;

Kod:
Sub OpenWordDoc()
    Sheets("Sheet1").OLEObjects("MyDoc").Verb (xlVerbPrimary)
    Set objWord = GetObject(, "Word.Application")
    objWord.Run "AutoOpen"
End Sub
4) Daha sonra, sayfa üzerindeki Word nesnesine yukarıda belirttiğim OpenWordDoc makrosunu atadım.

5) Artık bütün işler bittikten sonra, sayfa üzerindeki Word nesnesine tıkladım ve işlem tamam. Tabii, unutmamak lazım.... daha sonradan Word belgesini kapattığınızda eğer varsa, içindeki AutoClose makrosu bu mesajın başında belirttiğim nedenlerden dolayı çalışmayacaktır.

6) Sözkonusu Excel dosyası ektedir.


.
 

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
merhaba
syn Haluk,
sayenizde hergün yeni şeyler öğreniyoruz.
Allah sizi başımızdan eksik etmesin.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Teşekkür ederim Süleyman bey, ben de sizin için en iyi dileklerimi sunarım.

.
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Syn. Haluk Bey,
Öncelikle teşekkür ederim. Güzel ve sorun çözücü bir çalışma olmuş. Eminim bu bilgi pek çok kişinin işine yarayacak.
AutoOpen'ı hallettik, anladığım kadarıyla AutoClose'yi biraz daha bekleyeceğiz. Onu da muhakkak bir çözen bulunacaktır.
Saygılar...
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Gerçi sorunumu ben de excele yazdığım bir makroyla hallettim. Bilgi olsun diye ekliyorum.
Amacım excelden çıkarken word içindeki verinin silinmesiydi.
Dosyayı açınca, word nesnesine çift tıklayın ve içine birşeyler yazın, çünkü excelden çıkarken silinecektir. Tekrar exceli açtığınızda word içindeki verinin silindiğini göreceksiniz. Bunu silme değilde farklı bir makroya da uygulayabilirsiniz.
 
Katılım
26 Kasım 2005
Mesajlar
396
Excel Vers. ve Dili
Office 365
dosya güncellemesi

Haluk bey, sizden göndermiş olduğunuz test dosyasını tekrar güncellemenizi rica ediyorum. Çünkü indiremedim.
 
Üst