Post on 07-Dec-2014
description
transcript
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Office & VBA
●Apprendere l'utilizzo avanzato della suite MS Office
●Object Linking Exchange (OLE)
●Visual Basic for Applications (VBA)
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Che cos'è Microsoft Office?
È una suite applicativa costituita da una serie di strumenti differenziati in dipendenza della versione posseduta
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Riassunto della prima giornata
✔ Microsof Access è un RDBMS con interfaccia grafica che fonde
l'architettura JET a una semplice interfaccia grafica✔ I campi sono i dati elementari mentre le tabelle raggruppano più campi
(es. rubrica indirizzi: ciascun nominativo è un insieme di più campi)✔ Le query sono particolari rappresentazioni delle tabelle che riportano
solo le informazioni che rispondono a determinati criteri✔ La rappresentazione gerarchica delle tabelle è identificato dalle
relazioni.✔ Le interfacce sono uno strumento per rappresentare i dati in un modo
“user friendly”.
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Riassunto della seconda giornata – 1
✔ Esistono componenti standard e componenti avanzati da poter
aggiungere alle interfacce.✔ Un particolare componente avanzato è identificato dalle sottomaschere.✔ Una macro corrisponde ad un insieme di operazioni eseguite in
sequenza. È possibile impostare condizioni per il flusso delle
operazioni.✔ Le maschere di Microsoft Access sono orientate agli eventi che
vengono scatenati dall'interazione dell'utente con i componenti
dell'interfaccia.✔ Ad un'evento si può associare una sola azione (Macro / Codice VBA)
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Riassunto della seconda giornata – 2
✔ VBA è un linguaggio di scripting che ha le medesime regole di Visual
Basic
✔ Una variabile è definita tramite la parola chiave Dim e di default ha
una visibilità limitata (Dim, Private) o può essere di tipo Public✔ Ad una variabile è possibile assegnare un valore, un'altra variabile o
il risultato di un'espressione.✔ Le classi sono strutture che raggruppano proprietà e metodi✔ I componenti delle maschere sono classi che implementano
un'interfaccia grafica e gli eventi.
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Il programma del corso – 3° giorno
● Blocchi condizionali● If Then Else● Select Case
● Cicli Iterativi● For● While● Do
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Variabili booleane e operatori booleani
✔ Una variabile booleana (boolean) può assumere solo due stati:
Vero (True) o Falso (False)
✔ Qualsiasi valore diverso da zero sarà considerato come True.✔ In VBA esistono operatori per la manipolazione di variabili booleane:
✔ AND (C = A And B C è True solo se A e B sono True)
✔ OR (C = A Or B C è True se A è True o B è True)
✔ NOT (B = Not A B è True se A e False )
✔ XOR (C = A Xor B C è True se A è diverso da B)
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Tabelle logiche AND / OR / XOR
Valore A Valore B RisultatoTrue True TrueTrue False FalseFalse False FalseFalse True False
Operatore ANDValore A Valore B Risultato
True True TrueTrue False TrueFalse False FalseFalse True True
Operatore OR
Valore A Valore B RisultatoTrue True FalseTrue False TrueFalse False FalseFalse True True
Operatore XOR
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Blocchi condizionali
✔ Un blocco condizionale è una sequenza di operazioni che vengono eseguite solo al
verificarsi di una precisa equazione booleana✔ If … Then … Else … End If
If Espressione Then…
End If✔ Select Case … Case … End Select
select Case EspressioneCase Valore
…Case Valore
...End Select
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Cicli Iterativi (For)
✔ I cicli iterativi sono un blocco di operazioni che vengono ripetute
finquando una particolare condizione non si verifica.
✔ Il ciclo FOR è un ciclo con un numero di iterazioni determinato.For i = A To B Step C
…Next
✔ A è il valore di partenza della variabile i, B è il valore che dovrà
raggiungere i per completare il ciclo mentre C è il valore di
incremento della variabile i.
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Cicli Iterativi (While)
✔ Per il ciclo iterativo While a differenza del For non è determinabile il
numero di cicli che dovrà eseguire.
✔ Il blocco di istruzioni presenti nel blocco While … Wend sarà
eseguito finquando la condizione di ciclo sarà verificata.While Espressione
…Wend
✔ Dove Espressione è una variabile o il risultato di un'operazione
che dovrà restituire true per garantire l'esecuzione delle operazioni
nel blocco compreso tra le righe While Espressione e Wend
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Cicli Iterativi (Varianti del Do … Loop)
✔ Il ciclo iterativo Do While … Loop segue le stesse regole del ciclo While … Wend.
✔ Il ciclo iterativo del Do … Loop While esegue almeno una volta il codice
presente nel blocco da ciclare e finquando l'espressione segnata dopo il
while non è verificata ripeterà il codice
✔ Do Until … Loop esegue il codice presente nel ciclo iterativo
terminando appena la condizione indicata dopo l'Until si verifica. Non
eseguirà mai il contenuto del codice se la condizione è già verificata.
✔ Do … Loop Until esegue il codice nel ciclo iterativo almeno una volta e
continuerà fino a quando l'espressione è verificata.
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Forzare l'uscita da un ciclo
✔ While … Wend → Exit While✔ For … Next → Exit For✔ Do … Loop → Exit Do
✔ Lo stesso concetto vale per le procedure e per le funzioni:
✔ Private/Public Sub … End Sub → Exit Sub
✔ Private/Public Function … End Function → Exit Function
Giorno 3Autore: Diego La Monica - http://diegolamonica.infoEmail:me@diegolamonica.info
Il programma del corso – 4° giorno
● VBA in pratica (3° Parte)