Office & VBA - Giorno 6
Upcoming SlideShare
Loading in...5
×
 

Office & VBA - Giorno 6

on

  • 1,415 views

Accesso ai dati tramite la scrittura di codice VBA basandosi sulla tecnologia ADO e raffronto tra le due metodologie di connessione ai dati.

Accesso ai dati tramite la scrittura di codice VBA basandosi sulla tecnologia ADO e raffronto tra le due metodologie di connessione ai dati.

Statistics

Views

Total Views
1,415
Views on SlideShare
1,338
Embed Views
77

Actions

Likes
0
Downloads
9
Comments
0

2 Embeds 77

http://diegolamonica.info 72
http://www.slideshare.net 5

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Office & VBA - Giorno 6 Office & VBA - Giorno 6 Presentation Transcript

    • Office & VBA
      • Apprendere l'utilizzo avanzato della suite MS Office
      • Object Linking Exchange (OLE)
      • Visual Basic for Applications (VBA)
    • Che cos'è Microsoft Office? È una suite applicativa costituita da una serie di strumenti differenziati in dipendenza della versione posseduta
    • 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”.
    • 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)
    • 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 o 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.
    • Riassunto della terza giornata
      • Una variabile booleana può assumere solo 2 valori: True o False .
      • Esistono operatori per le variabili booleane ( And , Or , Xor , Not )
      • Un blocco condizionale viene eseguito solo al verificarsi di una precisa condizione (“ if then else ” e “ select case ”).
      • I cicli iterativi sono blocchi di codice che vengono ripetuti fino al verificarsi di una precisa condizione ( for , while , do while e do until ).
      • Per forzare l'uscita da un ciclo si usa il comando “ exit ” seguito dall'identificatore del ciclo (“ exit for ”, “ exit do ”, “ exit while ”).
      • Per le procedure ( sub ) e le funzioni ( function ) esistono analoghi comandi di uscita (“ exit sub ” “ exit function ”)
    • Riassunto della quarta giornata
      • Gli script VBA di Microsoft Access si connettono in modo nativo al database utilizzando DAO ( Data Access Object )
      • Application.CurrentDB è il metodo che restituisce un'istanza al Database corrente
      • Tramite il metodo Execute eseguiamo una query che non restituisce risultati mentre tramite il metodo OpenRecorset interroghiamo una tabella o una query.
      • Tramite i metodi MoveFirst , MovePrevious , MoveNext e MoveLast dell'oggetto Recordset possiamo spostarci tra i record
      • Le proprietà EOF e BOF ci indicano se il cursore è posizionato alla fine o all'inizio del recordset. Mentre per leggere dal record corrente si usa la proprietà Fields o la forma abbreviata myRecordset ! FieldName (dove myRecordset è un oggetto di tipo recordset e FieldName è il nome del campo).
      • AddNew , Update e Delete servono rispettivamente per creare, confermare le modifiche ed eliminare il record corrente
    • Il programma del corso – 5° giorno
        • Collegarsi a tabelle in un altro Database
        • Interrogare altre basi dati tramite VBA
    • Collegare tabelle esterne Tramite l'utilizzo delle funzioni native di Microsoft Access è possibile creare collegamenti a tabelle esterne: File -> Carica Dati Esterni -> Collega tabelle … Caratteristiche:
        • I dati risiedono fisicamente su un'altra base dati
        • L'aggiornamento delle tabelle collegate da un'altra base dati è riportato automaticamente nel nostro database
        • Riduzione della dimensione di ciascun database
    • Progettare un DB da zero Il committente, ci ha informato dopo aver consegnato il nostro progetto che hanno un'altra banca dati dalla quale prendere alcune delle informazioni sui cavalli.:
          • Identificare la chiave di relazione con la nuova banca dati
          • Metterla in comunicazione senza obbligare il cliente ad utilizzare il nuovo strumento di simulazione per la modifica dei contenuti
          • Modificare le relative maschere di inserimento per comprendere le nuove informazioni
    • Database con ADO (ADODB) ADO ( ActiveX Database Object ) è una libreria per la connessione ai dati da diverse origini. La sintassi per istanziare un oggetto di tipo Database è la seguente: Dim Conn as ADODB.Connection Set Conn = New ADODB.Connection
    • Connettersi ad una fonte dati Per collegarsi ad una fonte dati è necessario indicare il P rovider , configurare la proprietà ConnectionString dell'oggetto ADODB.Connection e invocare il metodo Open() : Conn.Provider ="Microsoft.JET.OLEDB.4.0" Conn.ConnectionString="Data Source=C:PathAlDBmioDB.mdb" Call Conn.Open() Esempio di base di connessione ad un database di Microsoft Access
    • Interrogare la base dati L'oggetto Recordset della libreria ADODB a differenza di quanto accade con (l'oggetto Recordset de) la libreria DAO, si inizializza tramite il metodo Open dello stesso Recordset: Dim Conn As ADODB.Connection ' … Codice per stabilire la connessione con il DB … Dim Rs As ADODB.Recordset Set Rs = New ADODB.Recorset Rs.Open(“Select * From Anagrafica where Cognome ='Rossi'”, _ Conn, _ AdOpenKeyset, _ AdLockPessimistic)
    • Parametri del metodo Recordset.Open Recorset.Open(SQL, Connection, CursorType, LockType, Options)
      • SQL : La query SQL di interrogazione della fonte dati
      • Connection : Un oggetto di tipo ADODB.Connection precedentemente instanziato e il quale ha stabilito una connessione con la fonte dati.
      • CursorType : può essere: adOpenForwardOnly , adOpenForwardOnly , adOpenDynamic , adOpenStatic
      • LockType : può essere: adLockReadOnly , adLockPessimistic , adLockOptimistic , adLockBatchOptimistic .
      • Options : descrive il tipo di oggetto riportato nel parametro SQL
    • Esempio di interrogazione DB con ADO Dim DB As ADODB.Connection Dim Rs As ADODB.Recordset Set DB = New ADODB.Connection DB.Provider = "Microsoft.Jet.OLEDB.4.0" Call DB.Open("ConnectionString=C:MioDB.mdb") Set Rs = New ADODB.Recordset Call Rs.Open(“Anagrafica”, DB, ADOpenKeyset, AdLockReadOnly) Do While Not Rs.eof Debug.Print Rs(“Cognome”) & “ “ & Rs(“Nome”) Rs.MoveNext Loop Rs.Close Set Rs = Nothing
    • Il programma del corso – 7° giorno
        • Il modello OLE
        • Il minimo comun denominatore: “Application”
        • Le ricevute di vincita in access:
          • Stampa unione
          • Creare documenti da VBA