Oprogramowanie Microsoft® Visual Basic® for Applications (VBA) zapewnia integrację aplikacji z innymi aplikacjami z obsługą VBA.
Produkty oparte na programie AutoCAD mogą być sterownikami automatyzacji dla innych aplikacji, takich jak Microsoft Word czy Excel.
Uwaga: Oprogramowanie VBA nie jest już instalowane domyślnie. Aby uzyskać więcej informacji, przejdź na stronę https://www.autodesk.com/vba-download.
VBA przesyła komunikaty za pomocą AutoCAD ActiveX Automation Interface. Język VBA programu AutoCAD umożliwia środowisku Visual Basic działanie równocześnie z programem AutoCAD oraz zapewnia programowe sterowanie tym programem za pośrednictwem interfejsu ActiveX Automation Interface. To połączenie programu AutoCAD, mechanizmu ActiveX Automation i języka VBA stanowi interfejs o wyjątkowych możliwościach. Nie tylko steruje on obiektami programu AutoCAD, ale może także przesyłać dane do innych aplikacji i pobierać je z nich.
Aby uzyskać możliwość edytowania lub uruchomienia makra z projektu VBA, należy je najpierw wczytać do programu AutoCAD. Projekty VBA są przechowywane w oddzielnych plikach z rozszerzeniem .dvb; składają się one z modułów kodu i klasy oraz formularzy. Ponieważ projekty VBA są przechowywane w osobnym pliku, projekt VBA może podczas sesji otwierać i zamykać różne rysunki programu AutoCAD, czego nie można zrobić w języku AutoLISP.
Uwaga: Projekty VBA nie są binarnie zgodne z plikami projektów Visual Basic (VBPPROJ) utworzonymi za pomocą programu Visual Studio.
Podstawowe elementy modułu VBA dla programu AutoCAD
Programowanie w języku VBA w programie AutoCAD opiera się na trzech głównych elementach.
- AutoCAD — oferuje bogaty zbiór obiektów zawierający elementy, dane i polecenia programu AutoCAD. Znajomość programowania w programie AutoCAD jest zdecydowanie przydatna. Jednakże obiektowa filozofia VBA całkowicie różni się od filozofii AutoLISP.
- Interfejs AutoCAD ActiveX Automation — zapewnia przesyłanie komunikatów (komunikację) do i z obiektów programu AutoCAD. Programowanie w VBA wymaga podstawowego zrozumienia ActiveX Automation.
- VBA — udostępnia własny zestaw obiektów, słów kluczowych i stałych, które zapewniają przepływ, sterowanie, debugowanie oraz wykonywanie programu. Obszerny system pomocy Microsoft dla języka VBA został włączony do języka VBA w programie AutoCAD.
Korzyści wynikające z używania języka VBA
Interfejs AutoCAD ActiveX/VBA ma wiele zalet w porównaniu z innymi środowiskami API programu AutoCAD:
-
Szybkość.Aplikacje ActiveX, działające w oparciu o VBA, są szybsze od aplikacji AutoLISP.
-
Łatwość w użyciu. Język programowania i środowisko programistyczne są łatwe w użyciu, a ponadto są zintegrowane z programem AutoCAD po jego zainstalowaniu.
-
Możliwość działania w systemie Windows. ActiveX i VBA zostały stworzone do pracy z innymi aplikacjami Windows i zapewniają znakomitą ścieżkę dla przekazywania informacji między aplikacjami.
-
Szybkie tworzenie prototypów. Szybkie tworzenie interfejsów VBA zapewnia idealne środowisko projektowania prototypów aplikacji, nawet jeśli aplikacje te zostaną ostatecznie utworzone w innym języku.
-
Baza dla programistów. Programiści często znają język Visual Basic .NET (VB.NET). Język VBA jest podobny do języka VB.NET i umożliwia dostosowywanie programu AutoCAD i tworzenie aplikacji zarówno tym programistom, jak i tym, którzy chcą nauczyć się jakiegoś języka programowania oprócz języka AutoLISP.