Connessione al database con Visual Basic NET? Lo trovi su Opentraining.it Visual Basic Italia
PRINCIPALE > ARTICOLO

Eseguire una ricerca veloce nell' archivio delle risorse di Visual Basic Italia®: 

Preso dall'archivio...

Premere il pulsante sotto per accedere direttamente ad un articolo o ad un esempio preso in modo casuale dall'archivio.



Ultimo e-book pubblicato:

"INTRODUZIONE AI CSS"

Lo scopo del CSS language è quello di controllare lo stile dei vari elementi che concorrono a formare un
documento HTML.
Si può operare in tre modi collegamento ad un foglio di stile esterno;definizione degli stili all'inizio
del documento utilizzo della proprietà style all'interno di un Tag HTML (embedded style). Questo e-book introduttivo
servirà per apprendere tali nozioni fondametali dei fogli di stile.

Prezzo: € 0.0.
Presentazione:
REAL SOFTWARE RILASCIA LA VERSIONE 5.0 di REALbasic per Windows






Gorizia, 5 maggio 2003 - Active, distributore in esclusiva di REALSoftware, Austin, Tx, annuncia la disponibilità di REALbasic 5.0 per Windows, uno strumento per lo sviluppo semplice da usare che permette agli utenti Windows di tutti i livelli di creare applicazioni personalizzate e di compilarle sia per la piattaforma Windows che per quella Macintosh.
[>>]

http://www.active-software.com

 

Contatti. Utilizzare l'email generica per domande relative al sito:
Porre domande relative al sito
oppure scrivere ad un responsabile di area.
Responsabile del sito: >Andrea Martelli
Responsabile area "Corso di VB":
> Giorgio Abraini

Creare un'aggiunta a MS Excel - prima parte

Questa lezione, consultata da 2859 utenti, è stata giudicata di ottimi contenuti , con un'esposizione perfettamente comprensibile e con un livello di approfondimento ottimo da 60 votanti.


Introduzione

Nella rubrica "Visual Basic per Excel" si sono considerate alcune funzioni dell'applicazione di Office manipolabili attraverso la libreria appropriata. Il problema, se non si vuole creare una macro vera e propria, è che spesso risulta scomoda l'interazione tra due applicazioni (quella scritta in Visual Basic e la sessione Excel) separate se si pensa ad esempio che il semplice passaggio da una all'altra sposta il focus sull'applicazione selezionata e quindi rende inutilizzabile l'altra. Fortunatamente Office è stato progettato in modo da poter essere integrato con applicazioni esterne in modo da renderle vere e proprie funzioni interne.  
E nel corso di questi articoli si vedrà nel dettaglio come sfruttare quest' utile caratteristica fornita da Microsoft.

Come già è stato visto per le aggiunte dell'IDE di Visual Basic, è fondamentale tenere a mente i due eventi principali di una qualsiasi applicazione add-in: il collegamento e la chiusura.
Collegare un'aggiunta significa caricarla ed integrarla con l'applicazione a cui si riferisce, scollegarla o chiuderla invece significa eliminarla dalla lista delle aggiunte a disposizione.
E' chiaro che nessuno dei due procedimenti è irreversibile in quanto è possibile collegare e scollegare l'add-in più volte durante un'unica sessione dell'applicazione, a meno che non si sia impostato il collegamento unicamente all'apertura dell'applicazione e lo scollegamento alla chiusura.
Essendo due eventi, collegamento e scollegamento possono essere gestiti in maniera molto semplice dal codice. Proprio come l'evento Form_Load si riferisce all'apertura di una form, l'evento OnConnection indica il collegamento di un add-in. E come l'evento Form_Unload si riferisce alla chiusura di una form, l'evento OnDisconnection fa riferimento allo scollegamento di un'aggiunta.
Le modalità di progettazione di un'aggiunta sono:
nessuna: l'aggiunta non sarà caricata all'avvio dell'applicazione e non sarà disponibile all'interno della lista delle aggiunte. Pertanto non potrà mai essere richiamata dall'utente.
A richiesta: l'aggiunta non sarà caricata automaticamente all'avvio dell'applicazione ma sarà elencata nella lista delle aggiunte e perciò a disposizione di un'eventuale richiesta da parte dell'utente.
All'avvio: l'aggiunta sarà collegata automaticamente ad ogni avvio dell'applicazione.
All'avvio successivo: l'aggiunta sarà collegata automaticamente all'avvio successivo dell'applicazione.


Preparazioni per la creazione di un'aggiunta

Visual Basic prevede un progetto predefinito nel caso si voglia sviluppare un'aggiunta. Per accedere a tale progetto sarà sufficiente aprire un nuovo progetto e nella lista scegliere la voce AddIn.
Il codice visualizzato però fa riferimento unicamente alle aggiunte che si integrano con Visual Basic e si rivela pertanto inutile con qualsiasi applicazione di Office (in questo caso Excel).
Basterà quindi cancellare il codice in attesa di svilupparne uno ad hoc.
Si sarà notato che alla creazione del progetto (denominato per default MyAddIn) sono state generate due cartelle: Form e Finestre di progettazione.
La cartella Form contiene le form di cui si compone l'aggiunta, ossia la sua interfaccia con la quale l'utente potrà interagire. Ad esempio se si intende creare un'aggiunta che visualizzi in un controllo ListBox tutti i valori delle celle selezionate dall'utente, è necessario prevedere una form che contenga la ListBox.
La cartella Finestre di progettazione contiene invece il modulo Connect. Tale modulo è necessario per impostare le modalità di collegamento e scollegamento dell'aggiunta oltre che ad indicare come l'aggiunta si integrerà all'applicazione.
Ad esempio se si vuole inserire un pulsante nella toolbar di Excel, alla cui pressione verrà lanciata l'interfaccia dell'aggiunta, questo dev'essere progettato nel modulo Connect.
Conncet inoltre permette di definire l'applicazione Office alla quale l'aggiunta andrà ad integrarsi.


La connessione dell'aggiunta

Come già detto la connessione dell'aggiunta permette di avere a disposizione dell'utente l'add-in in caso di successo. Se però si verifica un'errore l'evento restituirà il riferimento all'aggiunta che ha generato l'errore. Sarà semplice in questo modo andare ad isolare e ad eseguire il debug dell'applicazione.
Ora, ancora prima di inserire il codice nel modulo è necessario chiedersi cosa si desidera che faccia l'aggiunta e come si dovrà integrare con l'applicazione Office.
Per rispondere a tali domande basterà visualizzare l'oggetto "modulo Connect". Apparirà in questo modo un pannello sul quale sarà possibile operare varie scelte.

Nella scheda "Generale" è possibile impostare il nome che prenderà l'aggiunta (il nome di default, Mia Add-in va più che bene), una breve descrizione, l'applicazione a cui si integra (ed in questo caso si sceglierà MS Excel) e la modalità di connessione come visto nelle prime righe. Siccome risulta scomodo connettere manualmente l'aggiunta ad ogni avvio di Excel, l'aggiunta si caricherà automaticamente (come indicato dalla voce Startup).

Altra domanda: una volta connessa l'aggiunta, che cosa si desidera che accada ossia, in che modo si vuole che l'aggiunta sia raggiungibile dall'utente? Una soluzione può essere rappresentata dall'immediata visualizzazione dell'interfaccia dell'aggiunta.
Ma quella che si adotterà nell'esempio analizzato inserirà un pulsante nella toolbar di Excel, proprio come mostrato qui sotto.

A tale scopo si dovrà visualizzare il codice del modulo Connect, cancellarne tutto il contenuto come già visto e cominciare ad analizzare gli elementi da aggiungervi.
Il primo passo consiste nello studiare la sintassi dell'evento OnConnection:

AddinInstance_OnConnection(ByVal Application As Object, ByVal ConnectMode As _ AddInDesignerObjects.ext_ConnectMode, ByVal AddInInst As Object, custom() As Variant)

I parametri dell'evento sono Application, che indica l'applicazione Office alla quale l'aggiunta si integrerà, ConnectMode indica le varie modalità di connessione dell'aggiunta, AddInInst indica invece il riferimento all'aggiunta, utile per richiamare ad esempio il nome dell'aggiunta in ogni parte del codice e custom è un parametro non definito che però può essere utilizzato da chi progetta l'aggiunta.
Dove sono definiti questi parametri? Al momento della connessione (OnConnection), il sistema passa tutti gli elementi elencati sopra alla sottoprocedura. Da quel momento in poi saranno liberamente utilizzabili all'interno del codice.
Ad esempio: una volta connessa, il sistema indica all'aggiunta a quale applicazione si è integrata, (tramite il parametro Application).
Utilizzando nel resto del codice dell'evento la voce Application, si farà sempre riferimento all'applicazione indicata dal sistema.
La sottoprocedura dell'evento OnConnection sarà dunque inizialmente:

Private Sub AddinInstance_OnConnection(ByVal Application As Object, _
ByVal ConnectMode As AddInDesignerObjects.ext_ConnectMode, _
ByVal AddInInst As Object, custom() As Variant)
'…
'…
'…

End Sub

Ancora prima di aggiungere codice al posto dei commenti è necessario fare una considerazione di carattere generale ma estremamente importante per la comprensione del progetto: non ci si deve far ingannare dal fatto che l'aggiunta si integri con Excel.
Se infatti nella rubrica "Visual Basic per Excel" la libreria utilizzata era quella di MS Excel, in questo caso si utilizzerà la libreria generale di Office (e per esserne certi basta vedere quali librerie sono state incluse automaticamente all'apertura del progetto AddIn):

Perché?
La ragione specifica sta nel fatto che l'aggiunta in sé stessa non utilizza nessun componente dell'applicazione alla quale si integra: non è necessario definire un'applicazione Excel o una cartella di lavoro Excel, né tantomeno un foglio di calcolo Excel in quanto non saranno utilizzati se non nel momento in cui si andrà a definire i suoi specifici compiti.
Una generica aggiunta infatti, inizialmente senza alcuna funzione per l'utente (ad esempio un'add-in che inserisca un pulsante nella barra di Excel, alla cui pressione mostri una form vuota), utilizzerà unicamente gli elementi generici di una generica applicazione Office come la toolbar, elementi che fanno appunto parte della libreria di Office.