Browsing posts in the ‘VBA’ category

Vba per Autocad, Early and Late Binding…..

4 luglio 2009 - By admin

Programmando la mia macro per esportare misure dal cad ad Excel ho appreso due cose:

  • nello stesso gruppo di lavoro non tutti hanno lo stesso software (versioni diverse di Autocad e Office);
  • i controlli visuali non standard inseriti in fase di disegno (design time) a volte spariscono quando eseguiamo l’applicazione in un’altra postazione (run time).

L’applicazione mostra una form con un foglio di calcolo all’interno di Autocad, utile per immagazinare le misure che rileviamo graficamente selezionando oggetti quali polilinee, poligoni, cerchi e regioni. Lanciamo l’editor di Visual Basic (Alt+F11) ed inseriamo una form che chiameremo ViewData.

Early Binding

Per dire al compilatore di utilizzare la libreria di Excel dobbiamo inserire una referenza ad hoc

excel

Nel mio pc c’è una versione di Excel 2007 per cui mi appare la libreria Microsoft Excel 12.0 Object Library, per le altre versioni di Excel troveremo rispettivamente:

  • Excel 97: Microsoft Excel 8.0 Object Library
  • Excel 2000: Microsoft Excel 9.0 Object Library
  • Excel 2002: Microsoft Excel 10.0 Object Library
  • Excel 2003: Microsoft Excel 11.0 Object Library

Il compilatore a questo punto ha letto la libreria di Excel, conosce tutti i suoi metodi ed Intellisense si attiva fornendoci l’autocompletamento [...]Read More

Vba con Autocad 2010

2 luglio 2009 - By admin

Siamo nel 2009 ed è già uscita la versione 2010 di Autocad, naturale sono sempre in anticipo di un anno, dal punto di vsta (non è un errore ortografico eh eh eh…) degli sviluppatori c’è una grande novità: vba è scomparso, resta il menù ma se cerchiamo di caricare una macro o aprire l’editor di visual basic una finestra ci avvisa che visual basic for applications non è più supportato.

Strana scelta quella di eliminarlo dall’installazione ma lasciare il menù. Comunque non tutto è perduto, dal sito Autodesk è possibile scaricarsi il modulo VBA enabler 32bit o 64bit che rimette tutte le cose al suo posto, si recupera al 100% la funzionalità del Vba.

In Autodesk non sono impazziti, semplicemente ci preparano piano piano a sostituire VBA con VSTA (Visual Studio Tool for applications) perchè Microsoft smetterà di svilupparlo e i programmatori sono incoraggiati a migrare sulla piattaforma .net.

Nel frattempo ci sono ancora moltissime utility basate su Vba che utilizziamo, perchè smettere di farlo? quante utility vsta ci sono al momento?

Popularity: 13% [?]

[...]Read More