Macro 1 Una macro è un elenco denominato di istruzioni. Ciascuna istruzione viene chiamata ‘azione’. Le azioni vengono eseguite in modo sequenziale e, in genere, hanno degli argomenti. Le macro sono utili per automatizzare compiti ripetitivi. Per creare una macro basta posizionarsi nella finestra ‘Macro’ e cliccare su ‘Nuovo’, verrà aperta una finestra in cui è possibile inserire: - Nomi di azioni, in sequenza - Commenti - Argomenti CORSI DI INFORMATIZZAZIONE - Basi di Dati: MS Access - Parte 5 - Maggio 2003 1 Macro 2 La finestra di creazione di una nuova macro: Esegue la macro corrente ‘Passo a passo’. In tale modalità access interrompe l’esecuzione della macro ad ogni azione. Da usare per la ricerca di eventuali errori Esegue la macro corrente Pulsante ‘Nomi macro’. Visualizza la relativa colonna per inserire il nome di altre macro all’interno della macro corrente Pulsante ‘Condizioni’. Visualizza la relativa colonna per inserire espressioni condizionali per controllare l’esecuzione delle azioni CORSI DI INFORMATIZZAZIONE - Basi di Dati: MS Access - Parte 5 - Maggio 2003 2 Macro 3 Creiamo la macro ‘esporta’ per salvare la tabella ‘studenti’ in formato Excel o Html. Prima di procedere inseriamo una casella combinata nella maschera ‘studenti’ (piè di pagina) con due valori statici: ‘Excel’ e ‘Html’. Inseriamo ‘Formato’ come etichetta e diamo al controllo il nome ‘formatoexport’. Sarà possibile fare riferimento al valore di questo controllo da altri oggetti (query, report, macro …) utilizzando: Maschere!studenti!formatoexport Nota: - Generalizzando, la sintassi per far riferimento al valore di una casella di testo su una maschera è la seguente: Maschere!nomemaschera!nomecaselladitesto CORSI DI INFORMATIZZAZIONE - Basi di Dati: MS Access - Parte 5 - Maggio 2003 3 Macro 4 La macro di esportazione della tabella ‘studenti’: Se una condizione si verifica, vengono eseguite l’azione presente sulla stessa riga e tutte quelle immediatamente seguenti con tre puntini di sospensione nella colonna ‘Condizione’. Se una condizione non si verifica, il controllo del flusso passa alla prima istruzione che segue e che non inizia con i tre puntini di sospensione 1° messaggio: ="Foglio creato !@I dati sono stati esportati correttamente.@Funzione completata !" 2° messaggio: ="Pagina creata !@I dati sono stati esportati correttamente.@Funzione completata !“ Messaggio di errore: File non creato ! Inserire una opzione valida. CORSI DI INFORMATIZZAZIONE - Basi di Dati: MS Access - Parte 5 - Maggio 2003 4 Macro 5 Inseriamo, infine, un pulsante di comando sulla destra del controllo ‘formatoexport’ sulla maschera ‘studenti’. Associamo al pulsante la funzione di apertura della macro: Particolare del piè di pagina della maschera finale: Verifichiamo che, dopo aver cliccato sul pulsante appena creato, il file studenti sia stato creato nel formato selezionato e nella cartella del database (se non è stata definita una destinazione alternativa) CORSI DI INFORMATIZZAZIONE - Basi di Dati: MS Access - Parte 5 - Maggio 2003 5 La Macro autoexec Se creiamo una macro di nome ‘autoexec’, questa verrà eseguita automaticamente ogni volta che apriamo il database. Si potrebbe, ad esempio, lanciare l’apertura di una maschera ‘inizio’ con un menu principale (come quello visualizzato), con una sola azione: CORSI DI INFORMATIZZAZIONE - Basi di Dati: MS Access - Parte 5 - Maggio 2003 6 Esercitazione Creare un maschera ‘docenti’ sulla tabella omonima ed aggiungere un pulsante per esportare i dati in un file in formato .rtf Creare la maschera ‘inizio’ con i pulsanti di apertura della maschera ‘studenti’ e di anteprima dei report creati Creare la macro autoexec che apre la maschera ‘inizio’ Creare una macro sulla maschera ‘studenti’, richiamabile da un pulsante di comando, che visualizza uno dei seguenti messaggi a seconda della data di nascita dello studente: - Studente nato prima del 1/1/1980 - Studente nato dopo il 1/1/1980 (compreso) CORSI DI INFORMATIZZAZIONE - Basi di Dati: MS Access - Parte 5 - Maggio 2003 7