|
Le macro e Visual
Basic
Definizione di macro
Una macro è un set di una o più azioni, ciascuna delle quali
esegue una determinata operazione, ad esempio l'apertura di una maschera o la
stampa di un report. Le macro consentono di automatizzare le attività comuni.
È possibile ad esempio eseguire una macro che stampa un report quando l'utente
sceglie un pulsante di comando.
oppure:
Una macro è una sequenza di azioni che rende
automatiche le operazioni ripetitive del Data Base: aprire o
chiudere una maschera, stampare un report, ricercare record
rapidamente, garantire la precisione dell'inserimento di dati,
ecc.
Per creare una macro fare innanzitutto clic sulla scheda
corrispondente nella finestra Data Base e scegliere Nuovo;
- si apre la finestra macro, formata da due parti:

- nella parte superiore inserire le azioni da far eseguire
alla macro e un breve commento di spiegazione;
- nella parte inferiore (a cui si può accedere premendo il
tasto F6), vengono specificati gli argomenti di
ogni azione, cioè quelle costanti, variabili o
espressioni che costituiscono gli elementi di un'azione;
Esecuzione di una macro
Prima di eseguire una macro bisogna salvarla (fare clic su Salva
sul menu File) e assegnarle un nome; l'esecuzione
di una macro si può avviare dalla finestra macro, dalla finestra Data Base, da altre finestre del
Data Base o dall'interno di un'altra
macro:
- dalla finestra macro, fare clic sul pulsante Esegui
sulla barra degli strumenti oppure, se questo pulsante
non è visualizzato, scegliere Esegui dal menu.
- dalla finestra Data Base, selezionare prima la
scheda delle macro, poi il nome della macro che si vuole
eseguire e quindi premere il pulsante Esegui:
- da altre finestre del Data Base, fare clic su Esegui
macro dal menu Strumenti,
scegliere il nome della macro dall'elenco e fare clic su OK;
- da un'altra macro, aggiungere Esegui Macro
in una riga della colonna "Azioni" alla macro
da cui si desidera eseguire la seconda, quindi impostare
l'argomento Nome macro al nome della macro da
eseguire.
Utilizzare una macro o Visual Basic
In Microsoft Access è possibile eseguire molte attività
utilizzando le macro o l'interfaccia utente. In molti altri programmi di Data Base
per le stesse attività è necessaria la programmazione. L'utilizzo di
una macro o di Visual Basic, Applications Edition dipende in genere
dall'operazione che si desidera effettuare.
Quando utilizzare una macro
Le macro consentono di effettuare con facilità operazioni semplici
come aprire e chiudere le maschere, visualizzare e nascondere le barre degli
strumenti ed eseguire i report. È possibile unire in modo rapido e semplice gli
oggetti di Data Base creati, in quanto è sufficiente ricordare pochi elementi di
sintassi. Gli argomenti per ogni azione vengono visualizzati nella parte
inferiore della finestra della macro.
È inoltre necessario utilizzare le macro per:
- Eseguire assegnazioni di tasti globali.
- Eseguire un'azione o una serie di azioni quando un Data Base viene aperto per la prima volta. È possibile tuttavia utilizzare la
finestra di dialogo Avvio affinché vengano eseguite determinate
operazioni quando si apre un Data Base, come aprire una maschera.
Quando utilizzare Visual Basic
È necessario utilizzare Visual Basic invece delle macro se si
desidera:
- Facilitare la gestione di un Data Base. Dal momento che le
macro sono oggetti separati dalle maschere e dai report in cui vengono
utilizzate, la gestione di un Data Base contenente più macro che rispondono
a eventi delle maschere e dei report può risultare difficile. Le routine
evento di Visual Basic vengono invece generate all'interno della definizione
della maschera o del report. Se una maschera o un report viene spostato da
un Data Base a un altro, vengono spostate anche le routine evento generate al
loro interno.
- Creare funzioni personalizzate. In Access sono incluse molte
funzioni incorporate, come la funzione IPmt che consente di calcolare
il pagamento degli interessi. È possibile utilizzare queste funzioni per
eseguire calcoli, senza dover creare espressioni complesse. Utilizzando
Visual Basic è inoltre possibile creare funzioni personalizzate per
eseguire calcoli che non sono possibili in un'espressione oppure per
sostituire espressioni complesse. Le funzioni create possono inoltre essere
utilizzate nelle espressioni per applicare a più oggetti un'operazione
comune.
- Sostituire i messaggi di errore. Quando si verifica
un'operazione non prevista durante l'utilizzo di un Data Base e viene
visualizzato un messaggio di errore, quest'ultimo può essere poco
comprensibile all'utente, soprattutto se non ha familiarità con Access.
Utilizzando Visual Basic è possibile rilevare l'errore quando si verifica e
visualizzare un messaggio personalizzato oppure eseguire un'azione.
- Creare o manipolare oggetti. Nella maggior parte dei casi
risulta più facile creare e modificare un oggetto in visualizzazione
Struttura. In alcune situazioni può essere tuttavia necessario manipolare
la definizione di un oggetto nel codice. Utilizzando Visual Basic è
possibile manipolare tutti gli oggetti contenuti in un Data Base, così come
il Data Base stesso.
- Eseguire azioni a livello di sistema. È possibile eseguire
l'azione Esegui Applicazione in una macro per eseguire un'altra applicazione
per Microsoft Windows o per MS - DOS dall'applicazione attiva, ma una macro
non consente di eseguire molte altre operazioni al di fuori di Access.
Utilizzando Visual Basic è invece possibile controllare se nel sistema
esiste un file, utilizzare Automazione o il DDE per comunicare con altre
applicazioni per Windows come Microsoft Excel e chiamare funzioni nelle DLL
di Windows.
- Manipolare i record uno alla volta. È possibile utilizzare
Visual Basic per esaminare un record alla volta in un set di record ed
eseguire un'operazione su ogni record, mentre le macro utilizzano interi set
di record contemporaneamente.
- Passare argomenti alle routine Visual Basic. Quando viene
creata una macro, è possibile impostare gli argomenti per le relative
azioni nella parte inferiore della finestra della macro, ma non è possibile
modificarli durante l'esecuzione della macro. Con Visual Basic è invece
possibile passare argomenti al codice durante l'esecuzione oppure utilizzare
le variabili per gli argomenti, operazione che non è possibile effettuare
nelle macro. Tutto questo fornisce una grande flessibilità al funzionamento
delle routine Visual Basic.
Il report rappresenta un metodo efficace per stampare i dati. La possibilità
di controllare le dimensioni e l'aspetto di ogni elemento di un report consente
di mostrare le informazioni nel modo desiderato.La maggior parte delle
informazioni di un report proviene da una tabella,
da una query o da un'istruzione
SQL sottostante che costituisce l'origine dei dati del report. Altre
informazioni del report sono memorizzate nella struttura del report.
Gruppi di macro
In alcuni casi è opportuno raggruppare un insieme di macro in
un'unica finestra Macro. È il caso, ad esempio, di una maschera
che contiene diversi pulsanti di comando ciascuno dei quali apre
altre maschere; invece di salvare una macro per pulsante, si può
creare un gruppo macro che contenga una macro per ogni
pulsante: in tal modo nella scheda macro del Data Base sarà
aggiunta una sola macro, ma ciascuna delle singole macro verranno
eseguite indipendentemente le une dalle altre.
Per creare un gruppo macro operare come segue:
- selezionare la scheda Macro nella finestra Data Base, e fare clic su Nuovo;
- fare clic su Nome macro sulla barra degli
strumenti: nella parte superiore della finestra macro è
ora aggiunta una nuova colonna, Nome macro, appunto;
- digitare il nome della prima macro nella colonna appena
creata e aggiungere le azioni che ciascuna macro va ad
eseguire nella colonna Azioni;
- ripetere le operazioni 2 e 3 per ogni macro da inserire
nel gruppo.
Un modulo è un insieme di procedure e
di azioni espresse in linguaggio Visual Basic che consente di
automatizzare determinate operazioni complesse, salvato come una
singola unità. Si tratta di un'evoluzione delle macro in quanto
consentono, rispetto a queste ultime, una manipolazione più
puntuale e precisa dei dati del Data Base, record per record,
campo per campo. L'argomento, date le caratteristiche avanzate di
questo strumento, esula dall'impostazione del corso e, pertanto
chi desidera approfondire la conoscenza dei moduli può farlo
nella Guida in linea.
Sommario -
Introduzione
|