12 Mart 2020 Perşembe

AutoCAD ile VBA makro kullanımı #5-5

Autocad VBA Makro Kodlarını Çalıştırma Yöntemleri:


7) Userformda komut butonu ile makro çalıştırma

Excel VBA editöründe olduğu gibi AutoCAD VBA editöründe de UserForm oluşturma imkanı vardır. UserForm; kullanıcı ile program arasında iletişimi sağlayan Windows standart uygulama penceresidir.

  • VBA Editöründe menüden Insert / UserForm tıklayın ya da Proje Ağacında; Sağ tıkla / Insert / UserForm
  • Açılan UserForm1 penceresine Toolbox Araç çubuğundaki Controls sekmesindeki CommandButton üzerinde tıklayın
  • UserForm1 üzerinde buton oluşturmak ve boyutunu ayarlamak için fare ile dikdörtgen çizin.
  • Buton üzerinde görünen metni (CommandButton1) değiştirmek için buton seçili iken Properties (Kısayol: F4) penceresinde Caption alanındaki CommandButton1 metnini silip Eksen Çiz yazıp Entere basın.
  • Eksen Çiz butonu tıklandığında işletilecek kodları yazalım.
  • Eksen Çiz butonunu çift tıklayın. Kod penceresi açılacak. Aşağıdaki kodları bu pencerede oluşturun.
Private Sub CommandButton1_Click()
    Call ThisDrawing.EksenCiz
End Sub

  • Bu kod çalıştığında ThisDrawing kod penceresindeki EksenCiz alt rutinini çalıştırır. O yüzden AutoCAD ile VBA Makro kullanımı #4-1 sayfamdaki kodu Proje Ağacındaki ThisDrawing'i çift tıklayıp açılan kod penceresine ekleyin.
  • EksenCiz kodları UserForm1 kod penceresine de eklenebilirdi ancak bazı değişiklikler yapmak gerekir.
  • Oluşturduğumuz Form'u çalıştırmak için: Form seçili iken klavyeden F5e basın.
  • Form çalışacak ancak Eksen Çiz butonu tıklandığında hata oluşacak.
  • Bu hatayı gidermek için: VBA editöründe UserForm1 seçili iken Properties penceresinde ShowModal özelliğini False olarak değiştirin.

  • F5e basarak tekrar formu çalıştırın.
  • AutoCAD ekranına geçecek ve Form onun üzerinde belirecek.
  • Çalışan Formdaki Eksen Çiz butonunu tıklayın. EksenCiz makrosu çalışacak.

AutoCAD ekranında UserForm'u çalıştırma:

VBA editöründeyken F5 ile formu çalıştırmıştık ancak AutoCAD ekranında formun çalışması için bir makro kodu gereklidir.
  • VBA editöründe menüden Insert / Module tıklayın. Proje Ağacına Module1 eklenecek ve Kod alanında Module1 kod penceresi açılacak.
  • Module1 Kod penceresine aşağıdaki kodu ekleyin.
Sub Komutlar()
    UserForm1.show
End Sub
Artık AutoCAD ekranında iken ALT+F8 ile Komutlar makrosunu çalıştırdığımızda UserForm da çalışır.


Aynı yolları takip ederek UserForm'a varsa diğer makro kodları için de butonlar oluşturabilirsiniz.

Hiç yorum yok:

Yorum Gönder