SlideShare a Scribd company logo
Prof Adriani Francesco
francesco.adriani@ricecipriani.it
           http://mate.myblog.it
Vba e Excel
 Cosa è VBA
 Cosa è una macro
 Come si registra una macro
 Gli Oggetti Excel
 Interazione tra Excel e VBA
   Macro
   Eventi sugli oggetti Excel
 Applicazione di Esempio



              http://mate.myblog.it   2
Cosa è VBA
 Vba sta per Visual Basic for Application
 Cioè è una specie di Visual Basic fatto apposta per le
 Applicazioni.
 In particolare le applicazioni Microsoft Office
 Noi vedreme il VBA per Excel




              http://mate.myblog.it                       3
Cosa è una macro
 Una macro è un piccolo programma
 che viene creato per automatizzare alcune operazioni
 (solitamente quelle ripetitive)
 Le macro possono essere registrate piuttosto che
 scritte
 Qualche volta può essere utile registrare una macro di
 una azione che si fa ripetutamente (ad esempio la
 cancellazione di alcune celle), invece, a volte
 Può essere utile registrare una macro per vedere come
 è scritto il codice per fare una azione particolare di cui
 non sappiamo come scriverlo
               http://mate.myblog.it                          4
Come si registra una macro
 dalla barra dei menu clicca su Strumenti > Macro >
 Registra nuova macro




             http://mate.myblog.it                    5
dalla finestra di dialogo "regista macro" ...




nella casella "nome macro" nomina la macro
premi il pulsante OK

              http://mate.myblog.it             6
Compi le azioni da registrare
Dalla finestrella "interrompi registrazione", clicca sul
pulsante "interrompi registrazione“
La macro può essere rieseguita dalla barra dei menu su
Strumenti > Macro > Macro …




 seleziona la macro da eseguire (se non è già
selezionata)
clicca sul pulsante "esegui"
              http://mate.myblog.it                        7
Assegnare una macro ad un
pulsante
 Possiamo richiamare una macro o nel modo
 precedentemente visto oppure assegnando la macro ad
 un pulsante:
 porta il puntatore sopra il bordo della forma
 quando il puntatore si trasforma in una freccia a
 quattro punte
 clicca con il tasto destro sopra la forma e dal menu
 contestuale clicca su "Assegna macro“
 dall'elenco delle macro seleziona con
  un clic quella interessata
 clicca sul pulsante OK
               http://mate.myblog.it                    8
Gli Oggetti Excel
 Ora vediamo come si possono manipolare i dati di
 Excel tramite gli oggetti che lo compongono che sono
 principalmente:
 Workbooks (cartella di lavoro Excel)
 Sheets (Insieme dei fogli della cartella di lavoro) ,
 può contenere:
   Worksheets (Fogli di lavoro)
   Charts (Fogli con Grafici)
 Range (Rappresenta un insieme di celle)
 Cells (Contenuto di celle)
             http://mate.myblog.it                       9
Esempi di gestione oggetti
Worksheets(1).Range("C5:C10").Cells(1, 1)
                    .Formula = "=Rand()“
 Di cui:
   Worksheets(1) restituisce il foglio 1
   Worksheets(1).Range("C5:C10") restituisce l’insieme di celle dalla
   “c5” alla “c10” (quindi 6 celle)
   Worksheets(1).Range("C5:C10").Cells(1, 1) restituisce la prima cella
   in alto a sinistra relativamente all’insieme (quindi la cella “c5”)
   Worksheets(1).Range("C5:C10").Cells(1, 1).Formula modifica la
   formula della cella selezionata
 Quindi l’istruzione in sostanza inserisce un numero a
 caso nella cella “c5”
                 http://mate.myblog.it                                    10
Questo esempio imposta a 14 punti le dimensioni del carattere della cella
  C5 di Foglio1.
Worksheets("Foglio1").Cells(5, 3).Font.Size = 14

Questo esempio cancella la formula nella cella 1 di Foglio1.
Worksheets("Foglio1").Cells(1).ClearContents

Questo esempio imposta ad Arial 8 punti il carattere di tutte le celle di
  Foglio1.
With Worksheets("Foglio1")
.Cells.Font .Name = "Arial"
.Size = 8
End With



                    http://mate.myblog.it                                   11
Interazione tra Excel e VBA
 Macro
   Come abbiamo visto
 Eventi sugli oggetti Excel o Oggetti Vb
   Ad esempio creando form in VBA e richiamandoli da
   Excel
   Esempio: vogliamo inserire una data selezionata con il
   controllo Calendar ->




              http://mate.myblog.it                         12
Applicazioni di ESEMPIO
 Inserimento data da Calendar
 Accedere a VBA da Visualizza MACRO:
 Sul progetto facciamo inserisci
   UserForm




              http://mate.myblog.it    13
Aggiungiamo il controllo Calendar:




Selezionandolo dalla Caselli degli Strumenti possiamo
aggiungerlo alla form:




            http://mate.myblog.it                       14
Facendo doppioclick sul controllo Calendar si apre il
 codice da inserire nell’evento click
 Noi inseriamo una istruzione che modifica il
 contenuto della cella A1 inserendo la data selezionata
 dall’utente in questo modo:
Private Sub Calendar1_Click()
  Worksheets("foglio1").Range("a1").Cells(1
   , 1).FormulaR1C1 = Calendar1.Day & "/" &
   Calendar1.Month & "/" & Calendar1.Year
  UserForm1.Hide
End Sub
 Quindi nascondiamo la form

              http://mate.myblog.it                       15
Adesso creiamo un pulsante a cui assegnamo la
 seguente macro:
Sub InserimentoData()
 UserForm1.Show
End Sub




              http://mate.myblog.it              16

More Related Content

PPT
Capitolo 2 elementi di programmazione in vba
PPT
Lezione 1 - Introduzione al VBA per Excel
PPT
Linguaggio V.B.A.
PPT
Informatica Base Excel
PPT
PDF
Corso di Excel avanzato
PPT
Informatica - Excel Intermedio
PDF
Excel development e sql 3.9
Capitolo 2 elementi di programmazione in vba
Lezione 1 - Introduzione al VBA per Excel
Linguaggio V.B.A.
Informatica Base Excel
Corso di Excel avanzato
Informatica - Excel Intermedio
Excel development e sql 3.9

What's hot (19)

PDF
Excel - introduzione e formule
PDF
Informatica - uso di excel
PPTX
I fondamenti di Excel - L'Essenza
PDF
Excel Gratuito - Le Funzioni più Utili di Excel
PDF
Corso Excel Gratis - Tutorial Excel su CorsoExcel.it
PDF
Excel development e sql 1.7
PDF
Manuale Excel - Guida alla preparazione dell'esame ECDL
PPTX
Tipologie di dati
PPTX
Formattazione dei numeri
PPT
Slide riepilogo excel
PDF
Excel... per nostalgici
PPTX
L'importanza di microsoft excel nel settore bancario
PDF
EXCEL - LAVORARE con i FOGLI ELETTRONICI
PDF
ECDL-modulo4
PDF
Word... per nostalgici
PPTX
Excel development e sql 2.1
PPTX
PPS
Database
DOC
(Ebook ita - inform - access) guida al database access (doc)
Excel - introduzione e formule
Informatica - uso di excel
I fondamenti di Excel - L'Essenza
Excel Gratuito - Le Funzioni più Utili di Excel
Corso Excel Gratis - Tutorial Excel su CorsoExcel.it
Excel development e sql 1.7
Manuale Excel - Guida alla preparazione dell'esame ECDL
Tipologie di dati
Formattazione dei numeri
Slide riepilogo excel
Excel... per nostalgici
L'importanza di microsoft excel nel settore bancario
EXCEL - LAVORARE con i FOGLI ELETTRONICI
ECDL-modulo4
Word... per nostalgici
Excel development e sql 2.1
Database
(Ebook ita - inform - access) guida al database access (doc)
Ad

Viewers also liked (14)

PDF
Office & VBA - Giorno 1
DOC
Esercizio di excel
PDF
(E book ita) java introduzione alla programmazione orientata ad oggetti in ...
PDF
Autocad lezione 1
PDF
Office & VBA - Giorno 2
PPT
Strutture fondamentali della_programmaizone_visual_basicv2014_1.0
ODP
Office & VBA - Giorni 4 e 5
PPT
Capitolo 4 titoli obbligazionari
ODP
Office & VBA - Giorno 6
PPT
Capitolo 1 richiami mat. finanziaria
PDF
Sviluppo Di Un Sito Web
PDF
Html5 appunti.0
PDF
Html e CSS ipertesti e siti web 4.5
PDF
Simulation methods finance_2
Office & VBA - Giorno 1
Esercizio di excel
(E book ita) java introduzione alla programmazione orientata ad oggetti in ...
Autocad lezione 1
Office & VBA - Giorno 2
Strutture fondamentali della_programmaizone_visual_basicv2014_1.0
Office & VBA - Giorni 4 e 5
Capitolo 4 titoli obbligazionari
Office & VBA - Giorno 6
Capitolo 1 richiami mat. finanziaria
Sviluppo Di Un Sito Web
Html5 appunti.0
Html e CSS ipertesti e siti web 4.5
Simulation methods finance_2
Ad

Similar to Lezione 11 - Vba E Excel (20)

PPTX
Excel development e sql 1.3
PPT
Lezione 4 ogetti-vba
PPT
Microsoft excel - didattica differenziata
PPT
ecdl-modulo-4-foglio-elettronico
PPTX
TRIM_1 (Manuale Excel_Base, starting your competence by it)
PDF
Lezione 10 - Programmazione Ad Oggetti, Vb Accenni
ODP
Office & VBA - Giorno 7
PDF
Office & VBA - Giorno 8
PDF
Laboratorio di Informatica - Lezione 5 (Classi V)
PPTX
Inserire dati
PDF
EXCEL - TUTTI i MENU e i GRUPPI di COMANDI
PPSX
PPTX
L'importanza di microsoft excel nel settore bancario
PPTX
L'importanza di microsoft excel nel settore bancario
PDF
Tutorial Excel: partiamo dall'inizio
PPS
Programmazione
PDF
Modulo 4 Foglio Elettronico
PDF
EXCEL - INSERIRE NUMERI, DATE, TESTO nelle CELLE
PDF
Enhanced Microsoft Office 2013 Illustrated Fundamentals 1st Edition Hunt Solu...
PDF
Il foglio elettronico a supporto dell’attività professionale [AP03-S]
Excel development e sql 1.3
Lezione 4 ogetti-vba
Microsoft excel - didattica differenziata
ecdl-modulo-4-foglio-elettronico
TRIM_1 (Manuale Excel_Base, starting your competence by it)
Lezione 10 - Programmazione Ad Oggetti, Vb Accenni
Office & VBA - Giorno 7
Office & VBA - Giorno 8
Laboratorio di Informatica - Lezione 5 (Classi V)
Inserire dati
EXCEL - TUTTI i MENU e i GRUPPI di COMANDI
L'importanza di microsoft excel nel settore bancario
L'importanza di microsoft excel nel settore bancario
Tutorial Excel: partiamo dall'inizio
Programmazione
Modulo 4 Foglio Elettronico
EXCEL - INSERIRE NUMERI, DATE, TESTO nelle CELLE
Enhanced Microsoft Office 2013 Illustrated Fundamentals 1st Edition Hunt Solu...
Il foglio elettronico a supporto dell’attività professionale [AP03-S]

More from Rice Cipriani (13)

DOCX
Scaletta rispettando la cronologia
PDF
Problemi np con esempio
PDF
PDF
Capodanno 2010
PDF
Menù Capodanno
PDF
ITI Informatica - Statistica
PDF
ITI Informatica - Sistemi Di Telecomunicazioni
PDF
ITI Informatica - Elettronica
PDF
ITI Informatica - Informatica
PDF
ITI Elettronica Informatica Licei Scientifici - Matematica
PDF
ITI Elettronica - Sistemi Elettrici
PDF
ITI Elettronica - Elettronica
PDF
Piano delle lezioni 08-09
Scaletta rispettando la cronologia
Problemi np con esempio
Capodanno 2010
Menù Capodanno
ITI Informatica - Statistica
ITI Informatica - Sistemi Di Telecomunicazioni
ITI Informatica - Elettronica
ITI Informatica - Informatica
ITI Elettronica Informatica Licei Scientifici - Matematica
ITI Elettronica - Sistemi Elettrici
ITI Elettronica - Elettronica
Piano delle lezioni 08-09

Lezione 11 - Vba E Excel

  • 1. Prof Adriani Francesco francesco.adriani@ricecipriani.it http://mate.myblog.it
  • 2. Vba e Excel Cosa è VBA Cosa è una macro Come si registra una macro Gli Oggetti Excel Interazione tra Excel e VBA Macro Eventi sugli oggetti Excel Applicazione di Esempio http://mate.myblog.it 2
  • 3. Cosa è VBA Vba sta per Visual Basic for Application Cioè è una specie di Visual Basic fatto apposta per le Applicazioni. In particolare le applicazioni Microsoft Office Noi vedreme il VBA per Excel http://mate.myblog.it 3
  • 4. Cosa è una macro Una macro è un piccolo programma che viene creato per automatizzare alcune operazioni (solitamente quelle ripetitive) Le macro possono essere registrate piuttosto che scritte Qualche volta può essere utile registrare una macro di una azione che si fa ripetutamente (ad esempio la cancellazione di alcune celle), invece, a volte Può essere utile registrare una macro per vedere come è scritto il codice per fare una azione particolare di cui non sappiamo come scriverlo http://mate.myblog.it 4
  • 5. Come si registra una macro dalla barra dei menu clicca su Strumenti > Macro > Registra nuova macro http://mate.myblog.it 5
  • 6. dalla finestra di dialogo "regista macro" ... nella casella "nome macro" nomina la macro premi il pulsante OK http://mate.myblog.it 6
  • 7. Compi le azioni da registrare Dalla finestrella "interrompi registrazione", clicca sul pulsante "interrompi registrazione“ La macro può essere rieseguita dalla barra dei menu su Strumenti > Macro > Macro … seleziona la macro da eseguire (se non è già selezionata) clicca sul pulsante "esegui" http://mate.myblog.it 7
  • 8. Assegnare una macro ad un pulsante Possiamo richiamare una macro o nel modo precedentemente visto oppure assegnando la macro ad un pulsante: porta il puntatore sopra il bordo della forma quando il puntatore si trasforma in una freccia a quattro punte clicca con il tasto destro sopra la forma e dal menu contestuale clicca su "Assegna macro“ dall'elenco delle macro seleziona con un clic quella interessata clicca sul pulsante OK http://mate.myblog.it 8
  • 9. Gli Oggetti Excel Ora vediamo come si possono manipolare i dati di Excel tramite gli oggetti che lo compongono che sono principalmente: Workbooks (cartella di lavoro Excel) Sheets (Insieme dei fogli della cartella di lavoro) , può contenere: Worksheets (Fogli di lavoro) Charts (Fogli con Grafici) Range (Rappresenta un insieme di celle) Cells (Contenuto di celle) http://mate.myblog.it 9
  • 10. Esempi di gestione oggetti Worksheets(1).Range("C5:C10").Cells(1, 1) .Formula = "=Rand()“ Di cui: Worksheets(1) restituisce il foglio 1 Worksheets(1).Range("C5:C10") restituisce l’insieme di celle dalla “c5” alla “c10” (quindi 6 celle) Worksheets(1).Range("C5:C10").Cells(1, 1) restituisce la prima cella in alto a sinistra relativamente all’insieme (quindi la cella “c5”) Worksheets(1).Range("C5:C10").Cells(1, 1).Formula modifica la formula della cella selezionata Quindi l’istruzione in sostanza inserisce un numero a caso nella cella “c5” http://mate.myblog.it 10
  • 11. Questo esempio imposta a 14 punti le dimensioni del carattere della cella C5 di Foglio1. Worksheets("Foglio1").Cells(5, 3).Font.Size = 14 Questo esempio cancella la formula nella cella 1 di Foglio1. Worksheets("Foglio1").Cells(1).ClearContents Questo esempio imposta ad Arial 8 punti il carattere di tutte le celle di Foglio1. With Worksheets("Foglio1") .Cells.Font .Name = "Arial" .Size = 8 End With http://mate.myblog.it 11
  • 12. Interazione tra Excel e VBA Macro Come abbiamo visto Eventi sugli oggetti Excel o Oggetti Vb Ad esempio creando form in VBA e richiamandoli da Excel Esempio: vogliamo inserire una data selezionata con il controllo Calendar -> http://mate.myblog.it 12
  • 13. Applicazioni di ESEMPIO Inserimento data da Calendar Accedere a VBA da Visualizza MACRO: Sul progetto facciamo inserisci UserForm http://mate.myblog.it 13
  • 14. Aggiungiamo il controllo Calendar: Selezionandolo dalla Caselli degli Strumenti possiamo aggiungerlo alla form: http://mate.myblog.it 14
  • 15. Facendo doppioclick sul controllo Calendar si apre il codice da inserire nell’evento click Noi inseriamo una istruzione che modifica il contenuto della cella A1 inserendo la data selezionata dall’utente in questo modo: Private Sub Calendar1_Click() Worksheets("foglio1").Range("a1").Cells(1 , 1).FormulaR1C1 = Calendar1.Day & "/" & Calendar1.Month & "/" & Calendar1.Year UserForm1.Hide End Sub Quindi nascondiamo la form http://mate.myblog.it 15
  • 16. Adesso creiamo un pulsante a cui assegnamo la seguente macro: Sub InserimentoData() UserForm1.Show End Sub http://mate.myblog.it 16