Macro (informatica): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Riga 8:
In un [[foglio di calcolo]], alcune operazioni tipiche di una macro sono inserimento/eliminazione di righe/colonne, formattazione del testo/numero e colore, copia-incolla di valori, esecuzione di funzioni come le somme, impostazioni di stampa e salvataggio del ''[[file]]''.
 
== Livelli di esecuzioneDescrizione ==
=== Livelli di esecuzione ===
La macro può essere salvata a livello di singolo foglio di lavoro, tutte le cartelle di lavoro aperte, qualsiasi file Excel/open office. In quest'ultimo caso, la macro deve essere salvata nella cartella di avvio del programma (XLStart/PERSONAL.XLS, ovvero Open Office/Avvio).
 
Line 15 ⟶ 16:
Se ad esempio si desidera avere un indice dinamico dei fogli di lavoro presenti in un ''file'' Excel, dovrà essere associata a un foglio di lavoro di nome "Index" una macro che crea un indice dei fogli di lavoro: in pratica, per avere un indice dinamico si utilizza una macro ''ad evento'', salvata nel foglio di lavoro, che crea un comune indice statico.
 
=== Eseguire una macro su una selezione corrente di celle ===
Il codice di una macro non necessariamente si riferisce a una determinata riga, colonna o intervallo di celle, e può essere tale da venire eseguito sulla selezione corrente, che viene effettuata prima di lanciare la macro. Se ad esempio l'utente desidera eseguire la macro sulla colonna N, la riga 1 o l'invervallo di celle "A2:N20", è sufficiente che evidenzi col ''mouse'' queste aree del foglio, prima di lanciare la macro, che sarà appunto eseguita sull'ultima selezione corrente di celle.
 
Line 34 ⟶ 35:
<pre>ActiveSheet.AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Select</pre>
 
=== Annidamento di macro ===
È possibile "annidare" le macro, in modo che una macro ne esegua un'altra registrata in precedenza. Il registratore, sia di Excel che di Open Office, tiene conto dei passaggi del ''mouse'' nei menu, fra i quali in "macro / registra nuova macro".
 
=== Estensione della macro a tutti i fogli di lavoro ===
Sia in Excel che in Open Office Calc tutti i servizi di sistema possono essere eseguiti per singolo foglio di lavoro.
 
Line 89 ⟶ 90:
</pre>
 
=== Estensione della macro a file diversi da quello di registrazione ===
Tramite il percorso "File/Apri"o "File/cerca" la macro può eseguire operazioni su file che non sono aperti al momento del lancio della macro. La macro trova il file, lo apre ed esegue i comandi registrati.
 
=== Macro su date ===
Per eseguire un filtro, formula o procedura su una cella di tipo "Data", senza modificarne il formato europeo, occorre che i dati siano separati dal segno "*".
 
Diversamente, la macro porta la data nel formato americano del tipo "mm/g/aaaa", con i mesi che precedono i giorni. Ciò crea problemi nell'esecuzione di tutta una serie di funzioni, a partire dall'estrazione del mese o dell'anno contenuti nella data.
 
=== Macro ad evento ===
SI parla di macro ad evento quando la macro viene eseguita dopo aver compiuto certe azioni sul foglio di calcolo, come cliccare un bottone, aprire un certo foglio o file Excel.
 
Line 106 ⟶ 107:
Una macro simile serve ad esempio a creare indice ''dinamico'' dei fogli presenti in un certo ''file'': aprendo il foglio "Indice", se altri fogli sono stati rinominati o eliminati, la macro aggiornerà il contenuto di conseguenza.
 
=== Anonimizzazione delle macro ===
La macro può essere resa utile dal significato del file e dei fogli di lavoro, sostituendo a questi istruzioni del tipo: ''ActiveSheet.Select"'' o ''"ActiveSheet.Add"''. Diversamente, se la macro è eseguita su un foglio di lavoro o file con nome diverso da quello registrato nel codice, l'esecuzione restituisce un messaggio di errore.