Il software Microsoft® Visual Basic®, Applications Edition (VBA) consente l'integrazione con altre applicazioni abilitate per VBA.
I prodotti basati su AutoCAD possono essere utilizzati come controller Automation per altre applicazioni quali Microsoft Word o Excel.
Nota: VBA non viene più installato per default. Per ulteriori informazioni, visitare il sito Web all'indirizzo https://www.autodesk.com/vba-download-ita.
VBA invia messaggi mediante l'interfaccia ActiveX Automation di AutoCAD. VBA di AutoCAD consente l'esecuzione simultanea dell'ambiente Visual Basic e di AutoCAD nonché il controllo di AutoCAD a livello di programmazione mediante l'interfaccia ActiveX Automation. Il collegamento tra AutoCAD, ActiveX Automation e VBA fornisce un'interfaccia estremamente potente, grazie alla quale è possibile non solo controllare gli oggetti AutoCAD ma anche inviare e ricevere dati da altre applicazioni.
Prima di poter modificare o eseguire una macro da un progetto VBA, è necessario caricarlo in AutoCAD. I progetti VBA vengono memorizzati in file separati con estensione .dvb e sono costituiti da moduli di codice e di classe e da form. Poiché i progetti VBA vengono memorizzati in un file separato, durante una sessione è possibile aprire e chiudere diversi disegni di AutoCAD in un progetto VBA. Questa operazione non è invece possibile in AutoLISP.
Nota: I progetti VBA non sono compatibili a livello di codice binario con i progetti Visual Basic (VBPROJ) creati con Visual Studio.
Elementi fondamentali di VBA di AutoCAD
La programmazione VBA in AutoCAD è definita da tre elementi fondamentali.
- AutoCAD: offre un ampio gruppo di oggetti comprendente entità, dati e comandi AutoCAD. La programmabilità di AutoCAD è molto utile. Si noterà, tuttavia, che l'approccio basato sugli oggetti di VBA è alquanto diverso rispetto a quello di AutoLISP.
- Interfaccia ActiveX Automation di AutoCAD: stabilisce una comunicazione sotto forma di messaggi con gli oggetti AutoCAD. La programmazione in VBA richiede una comprensione dei principi di base di ActiveX Automation.
- VBA: fornisce un proprio gruppo di oggetti, parole chiave e costanti che consentono il flusso, il controllo, il debug e l'esecuzione del programma. VBA di AutoCAD include la Guida in linea completa Microsoft per VBA.
Vantaggi dell'utilizzo di VBA
L'interfaccia ActiveX/VBA di AutoCAD fornisce diversi vantaggi rispetto agli altri ambienti API di AutoCAD:
-
Velocità. Grazie all'esecuzione in-process di VBA, le applicazioni ActiveX sono più veloci delle applicazioni AutoLISP.
-
Semplicità di utilizzo. Il linguaggio di programmazione e l'ambiente di sviluppo sono di semplice utilizzo e sono integrati con AutoCAD dopo l'installazione del programma.
-
Interoperabilità con Windows. ActiveX e VBA sono progettati per essere utilizzati con altre applicazioni Windows e forniscono un eccellente strumento per la comunicazione delle informazioni attraverso le applicazioni.
-
Rapida creazione di prototipi. Il rapido sviluppo delle interfacce di VBA fornisce l'ambiente ideale per la creazione di prototipi di applicazioni, anche se tali applicazioni verranno sviluppate in un altro linguaggio.
-
Strumento di base per i programmatori. I programmatori in genere conoscono Visual Basic .NET (VB.NET). VBA è simile a VB.NET e rende accessibile la personalizzazione e lo sviluppo di applicazioni AutoCAD sia a tali programmatori sia a coloro che sono interessati ad apprendere un linguaggio di programmazione diverso da AutoLISP.