Program Yapmak | Programcılık Hakkında Her Şey | VİSUAL BASİC 6.0 | C, C++ ve C# Yazılım Dilleri | VB.NET Yazılım Dili

Disardan VBA makroyu calistirmak. (CorelDraw, Word, Excell vs.)

VBA modüllerine ulaşmak için ya VBA editör içinden başla komutu, yada menüler arasında geçişler yaparak komutlar veririz. Bu biraz da işin fantastik kısmı da olsa Visual Basic yardımıyla dışardan bir exe ile ilgili program ve içindeki VBA modülü çalıştırmak hoş yada pratik olabilir.

Bu dersteki örneğimiz CorelDraw içindeki FileConverter modülü üzerine olacak. (CorelDraw dersleri altında VBA derslerimize bir ek olarak düşünülebilir.)

Öncelikle bir form üzerine bir command buton yerleştiriyoruz. Üzerine "FileConvertar Başlat" gibisinden bir yazı da yazabiliriz.

http://resim.sanalkurs.net/uploads/ders24_001.jpg

Butonumuza çift tıklayıp gelen kod penceresine şu kodları yazalım;

Dim Converter As String 'Converter için bir string atıyoruz.
Dim cDraw As Object'CorelDraw için bir string atıyoruz.
Dim gms As CorelDRAW.GMSManager'CorelDraw GMS'nin tanımını yapıyoruz.
If CorelDRAW.Visible = True Then 'Eğer Corel halihazırda açık ise...
Set cDraw = CreateDocument'yeni bir boş döküman yarat...
CorelDRAW.InitializeVBA'VBA bölümünü çalıştır...
CorelDRAW.Visible = True'CorelDraw aktif...
Set gms = CorelDRAW.GMSManager'GMS'nin CorelDraw gmssi ve aktifliğini ayarlıyoruz.
GMSManager.RunMacro "FileConverter", "Converter.start"'FileConverter denen makro içinde "Converter" modülüne "başla" diyoruz...
Else 'aksi takdirde (yada corel halen açık değilse)
Set cDraw = CreateObject("CorelDraw.Application")'CorelDraw programını başlat...
cDraw.CreateDocument'yeni bir boş döküman yarat...
cDraw.InitializeVBA'VBA bölümünü çalıştır...
cDraw.Visible = True'CorelDraw aktif...
Set gms = CorelDRAW.GMSManager'GMS'nin CorelDraw gmssi ve aktifliğini ayarlıyoruz.
GMSManager.RunMacro "FileConverter", "Converter.start"'FileConverter denen makro içinde "Converter" modülüne "başla" diyoruz...

End If'eğer koşulunun sonu

Şimdi aşağıdaki görüntüyü de CorelDraw VBA Editör içinden aldım. Sarı ile boyadığım yerlere dikkatinizi çekerim. Üstteki kodları (start, converter vs) neye göre yazdığımı biraz daha iyi anlayabilirsiniz.

http://resim.sanalkurs.net/uploads/ders24_005.jpg

Kodların normal yazılmış görünümü şöyle olmalıdır;

Dim cDraw As Object
Dim gms As CorelDRAW.GMSManager
If CorelDRAW.Visible = True Then
Set cDraw = CreateDocument
CorelDRAW.InitializeVBA
CorelDRAW.Visible = True
Set gms = CorelDRAW.GMSManager
GMSManager.RunMacro "FileConverter", "Converter.start"
Else
Set cDraw = CreateObject("CorelDraw.Application")
cDraw.CreateDocument
cDraw.InitializeVBA
cDraw.Visible = True
Set gms = CorelDRAW.GMSManager
GMSManager.RunMacro "FileConverter", "Converter.start"

End If 


Project menüsüne tıklayalım;

http://resim.sanalkurs.net/uploads/ders24_001b.jpg

şimdi References bölümüne gidip;

http://resim.sanalkurs.net/uploads/ders24_002.jpg

ordan CorelDraw Type Library ekleyelim. (harf indexinde c'yi takip edin aşağıda [makinenizde CorelDraw kurulu olması gerekiyor] CorelDraw ile başlayan tipleri göreceksiniz. Bu ders için Corel 14'ü seçtim.

http://resim.sanalkurs.net/uploads/ders24_003.jpg

Yandaki check kutularını doldurduktan sonra isterseniz References'den bir kez daha kontrol edebilirsiniz.

http://resim.sanalkurs.net/uploads/ders24_004.jpg

Evet, projemizi çalıştıralım. (F5) tuşuna da basabilirsiniz.

http://resim.sanalkurs.net/uploads/ders24_006.jpg

Exe program çalıştı ve form karşımızda, düğmeye basalım;

http://resim.sanalkurs.net/uploads/ders24_007.jpg

İşte CorelDraw X4 açıldı ve hemen ardından FileConverter Makrosu da etkin hale geldi.

http://resim.sanalkurs.net/uploads/ders24_008.jpg

Ekte vermiş olduğum VB projesini biraz daha inceler ve eklemeler yaparsanız, elinizin altında makroları seri olarak başlatabilmek için bir küçük programcık olabilir.

İyi çalışmalar, başarılar...

notlar:
video= 415 kb rar sıkıştırılmış avi dosya (dikkat bilgisayarınızda 44.4 mb yer kaplayacaktır!)
video
youtube[HD]:
youtube'da seyret
snapshotlar:
snapshotları indir

Kaynak dosyayı indirmek için tıklayın

Sincan Laptop tamiratı ile alakalı içeriklerin bulunduğu web siteden bilgilere ulaşabilirsiniz. Sincan'da laptop tamiratını en iyi yapan yerleri sorgulayabilirsiniz. Cihan KOÇ
=> Sen de ücretsiz bir internet sitesi kurmak ister misin? O zaman burayı tıkla! <=