Vous êtes sur la page 1sur 35

Facult de Sciences conomiques et de Gestion

Rappels de Visual Basic


Connexion aux bases de donnes
Matrise de Sciences conomiques
Anne 2000-2001
Jrme Darmont
jerome.darmont@univ-lyon2.fr

Plan du cours
I.

Objectifs

II. Rappels de Visual Basic


III. Connexion VB-Access
IV. Connexion Excel-Access
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

Plan du cours
! I.

Objectifs

II. Rappels de Visual Basic


III. Connexion VB-Access
IV. Connexion Excel-Access
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

Objectifs de lanne
Raliser un projet informatique en Visual
Basic avec accs une base de donnes Access
Organisation :
Par groupes de 2
5 sances de TD classiques
5 sances consacres uniquement au projet

valuation :
Dmo
Rapport crit
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

Rgles du jeu
Le projet doit porter sur un cas rel concernant
personnellement au moins un des tudiants
Choix de sujet motiv rendre le 20 octobre
Base de donnes :

5 tables minimum
1 relation 1-N et 1 relation M-N minimum
Suffisamment de donnes pour effectuer des tests
10 requtes minimum (au moins 3 jointures, 3 groupements,
2 restrictions multicritres, 2 requtes paramtres)

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

Rgles du jeu
Application Visual Basic : Interface qui doit
permettre de

VB/BD

Consulter
Traiter
Ajouter
Supprimer
Mettre jour

les donnes de la BD Access

http://eric.univ-lyon2.fr/~jdarmont/

Rgles du jeu
Rapport crit :

Prsentation du sujet / Motivation


Analyse, Schma E/A de la base de donnes
Organisation de lapplication VB (feuilles, modules)
Conclusion, Problmes rencontrs
Annexe : Code VB

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

Plan du cours
I.

Objectifs

! II. Rappels de Visual Basic


III. Connexion VB-Access
IV. Connexion Excel-Access
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

Quest-ce quune application VB ?


Un ensemble de procdures (petits morceaux de
programme)
Une interface graphique compose de contrles
(zones de texte, boutons, listes, etc.)
Une procdure est excute lorsquun
vnement survient (ex. si lutilisateur clique sur
un bouton)
On parle de programmation visuelle et
vnementielle
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

Stockage des donnes


Un programme manipule des donnes qui
doivent tre stockes en mmoire centrale
(mmoire vive, RAM en anglais)
Structure logique de la mmoire :
1

10 11 12

Adresse
...

1 octet

La taille mmoire se compte en mga-octets


(1 Mo = 1024 Ko, 1 Ko = 1024 octets)
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

Stockage des donnes


Manipulation dadresses peu pratique
association dun nom ladresse dune donne
Dclarer une variable ou une constante allouer
une adresse une donne et lui associer un nom
Dclaration de variable VB :
dim nom_var as type
Dclaration de constante VB :
const nom_const = valeur_const
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

10

Types de donnes
Entiers :
Byte (1 octet, [0, 255])
Integer (2 octets, [-32768, +32767])
Long (4 octets, [-2147483648, +2147483647])
Rels :
Single (4 octets, [-3,402.1038, + 3,402.1038])
Long (8 octets, [- 1,797.10308 , +1,797.10308])
Currency (8 octets, [-922337203685477,5808, +922337203685477,5807])
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

11

Types de donnes
Chane de caractres :
String (jusqu environ 2 milliards doctets/caractres)

Date : Date (8 octets, [01/01/100, 31/12/9999])


Boolen : Boolean (2 octets, True ou False)
Contrle : Object (4 octets, adresse mmoire du
contrle)

Variable : Variant (16+ octets)


Le type change selon le contexte ( utiliser avec
modration).
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

12

Types de donnes
Tableaux : Dim nom_tab(taille) as type
Type structur dfini par lutilisateur :
Type nom_type
champ1 as type
champ2 as type

End Type

Ex. Type structur Personne constitu de Nom


(chane), Prnom (chane), ge (octet)
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

13

Exemples de dclarations
Const PI=3.1416
Dim i as Integer
Dim ch1, ch2, ch3 as String
Dim tab_de_reels(100) as Single
Dim matrice(10,10) as Double
Type Personne
nom as String
prenom as String
age as Byte
End Type
Dim une_personne as Personne
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

14

lments de base du langage


Affectation : =
Ex. i = 1
ch1 = "Coucou !"
tab_de_reels(5) = 3.14
matrice(i,4) = PI*2
une_personne.prenom = "Jrme"

Commentaire : '
Ex. ' Ceci est une ligne de commentaire

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

15

lments de base du langage


Conversions de type :
Fonction / Convertit une expression en
CByte / Byte
CInt / Integer
CLng / Long
CSng / Single
CDbl / Double
CCur / Currency
CStr / String
CDate / Date
CBool / Boolean
CVar / Variant
Ex. i = CInt(PI)

' i=3

msg_affiche = CStr(i)
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

16

lments de base du langage


Oprateurs de comparaison :
gal =
Infrieur <
Suprieur >

Diffrent <>
Infrieur ou gal <=
Suprieur ou gal >=

Oprateurs logiques :
Ou : or. La condition (cond1 or cond2) est vraie si cond1
est vraie ou cond2 est vraie.

Et : and. La condition (cond1 and cond2) est vraie si


cond1 et cond2 sont vraies.

Non : not. La condition (not cond1) est vraie si cond1


est fausse.
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

17

lments de base du langage


Composition des oprateurs logiques :
not(cond1 or cond2)
(not cond1) and (not cond2)
not(cond1 and cond2)
(not cond1) or (not cond2)
Ex. not(a=1 or b>10)
(not(a=1)) and (not(b>10))
(a<>1) and (b<=10)
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

18

Structures de contrle
Test :

If condition then
' Instructions si condition vraie
Else
' Instructions si condition fausse
End If

Ex. Calcul du maximum entre deux nombres


If n1<n2 then
max = n2
Else
max = n1
End If
NB : La clause else est optionnelle dans le cas gnral.
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

19

Structures de contrle
Slection :

Select case variable


Case valeur
' Instructions

Case Else
' Traitement par dfaut (optionnel)
End Select

Ex. Select

case num_mois
Case 1
nom_mois = "janvier"
Case 3, 4, 5
saison = "printemps"
Case Else
message = "cas non prvu"
End Select

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

20

Structures de contrle
Test court :

Iif condition, si_vrai, si_faux

Ex. Calcul du maximum entre deux nombres


Iif n1<n2, max = n2, max = n1

Choix dindex :

var = Choose (index,expr1,expr2)

Ex. Calcul de taux


taux = Choose (i, 0.05, 0.07, 0.1, 0.15)

Si i=1 alors taux= 5 %


Si i=3 alors taux=10 %
VB/BD

Si i=2 alors taux= 7 %


Si i=4 alors taux=15 %

http://eric.univ-lyon2.fr/~jdarmont/

21

Structures de contrle
Boucle pour :

For var=min to max step pas


' Instructions
Next var

Ex. Calcul de factorielle (10! = 1*2*3*4*5*6*7*8*9*10)


fact = 1
For i = 1 to 10
' step optionnel si 1
fact = fact*i
Next i

Ex. Initialisation rebours dun tableau


For i = 100 to 1 step -1
tab_de_reels(i) = i*PI
Next i
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

22

Structures de contrle
Boucle pour chaque lment de tableau :
For each var in tableau
' Instructions
Next var

Ex. Dim nom_mois(12) as String


Dim mois as String
nom_mois(1) = "janvier"

For each mois in nom_mois


' Traitement
Next
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

23

Structures de contrle
Boucle tant que :

While condition
' Instructions
Wend

Ex. Arrt du calcul de factorielle


fact = 1
i = 1
While (i<=10) and (fact<100)
fact = fact*i
i = i+1
Wend
NB : Le test sur la condition tant plac en dbut de boucle, on
peut ne pas entrer dans la boucle.
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

24

Structures de contrle
Boucle rpter jusqu :
Do
' Instructions
Loop until condition

Ex. Arrt du calcul de factorielle


fact = 1
i = 1
Do
fact = fact*i
i = i+1
Loop until (i>10) or (fact>=100)
NB : Le test sur la condition tant plac en fin de boucle, les
instructions sont au moins excutes une fois.
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

25

Comment choisir la bonne boucle ?

La boucle doit
tre excute au
moins une fois
La boucle peut
ne pas tre
excute
VB/BD

Nombre
ditrations
connu

Nombre
ditrations
inconnu

FOR NEXT

DO LOOP
UNTIL
WHILE
WEND

http://eric.univ-lyon2.fr/~jdarmont/

26

Structures imbriques
Ex. 1 : Condition complexe pour calculer une remise
If bon_client then ' bon_client=true
If montant>1000 then
taux_remise = 0.1
' 10 %
Else
taux_remise = 0.05 ' 5 %
End If
Else
' bon_client=false
If montant>2000 then
taux_remise = 0.05 ' 5 %
Else
taux_remise = 0.025 ' 2.5 %
End If
End If
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

27

Structures imbriques
Ex. 2 : Initialisation dune matrice
For i = 1 to 10
For j = 1 to 10
matrice(i,j) = i*j
Next j
Next i

Ex. 3 : Comptage dune valeur dans un tableau


c = 0
For i = 1 to 100
If tab_de_reels(i) = PI then c = c+1
Next i
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

28

Sous-programmes
Sous-programme : Programme autonome
ddi une tche prcise, de prfrence de taille
rduite. Un sous-programme peut recevoir des
paramtres.
Deux types de sous-programmes :
Procdures : Sous-programmes proprement dits
Fonctions : Sous-programmes qui renvoient un
rsultat (ex. fonction de calcul du sinus dun angle)
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

29

Sous-programmes
Structure dune procdure :
Public|Private Sub nom_proc (paramtres)
' Dclarations
' Instructions
End Sub

Structure dune fonction :


Public|Private Function nom_fn ( ) as type
' Dclarations
' Instructions
nom_fn = val_retour
End Function
Private : Appel possible uniquement depuis la mme feuille ou
le mme module / Public : depuis toute lapplication
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

30

Sous-programmes
Dfinition des paramtres : spars par des
virgules, en spcifiant le type de chacun
Ex. poct

as Byte, pch as String, preel as Single

Modes de passage :
Par valeur (ByVal) : Si le paramtre est une
variable existante, son contenu est recopi. Il ne sera
pas modifi en sortie de sous-programme.
Mode Par rfrence (ByRef) : Si le paramtre est une
par
variable existante, son adresse est utilise. Il pourra
dfaut
tre modifi en sortie de sous-programme.
Ex. ByVal poct as Byte, ByRef preel as Single
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

31

Sous-programmes
Exemple 1 : Calcul de maximum
Public Function Max(ByVal n1 as Single,
ByVal n2 as Single) as Single
If n1<n2 then
Max = n2 ' Valeur de retour : n2
Else
Max = n1 ' Valeur de retour : n1
End if
End Function

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

32

Sous-programmes
Exemple 2 : change de deux variables
Public Sub Swap(v1 as String, v2 as String)
' v1 et v2 sont passes par rfrence
Dim temp as String ' Variable temporaire
temp = v1
1
temp
v1 = v2
v1
v2 = temp
3
End Sub
v2
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

33

Sous-programmes
Appel de fonction depuis un autre sous-programme :
Ex. un_reel = Max (var1, 32767)

Appel de procdure depuis un autre sous-programme :


Ex. 1 : Call Swap (chaine1, chaine2)
Ex. 2 : Swap chaine1, chaine2

Fonctions intgres : Menu Aide / Sommaire


de laide / Rfrence du langage / Fonctions
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

34

Porte des variables


Variable dclare dans un sous-programme
variable locale au sous-programme accessible
uniquement dans ce sous-programme
Initialise chaque appel
Dtruite en fin de sous programme
Sauf si dclare en temps que variable
statique (valeur conserve entre deux appels
au sous-programme)
Ex. Static compteur as Integer
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

35

Porte des variables


Variable dclare dans la section Gnral /
Dclarations dune feuille ou dun module
variable locale la feuille / au module
accessible par tous les sous-programmes de la
feuille / du module, mais pas lextrieur
Variable dclare publique dans la section
Gnral / Dclarations dun module
variable globale accessible par toutes les
feuilles et tous les modules de lapplication
Ex. Public Score as Integer
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

36

lments visuels
Contrle : Objet prdfini (type Object) au
sens de la programmation oriente-objet
Proprits : Dfinition de son aspect
vnements : Dfinition de son comportement

Contrles courants : tiquette (Label), Zone de


Texte (TextBox), Cadre (Frame), Bouton de commande
(CommandButton), Case cocher (CheckBox), Bouton
doption (OptionButton), Zone de liste (ListBox), Zone
de liste modifiable (ComboBox)
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

37

lments visuels
Quelques proprits communes :
Name Nom interne de lobjet qui peut tre utilis dans un

programme
Appearance Apparence du contrle (3D ou plat)
BackColor Couleur du fond
Caption Texte affich lcran (sauf pour les champs de
saisie Text)
Enabled Contrle activ ou non (True/False)
Font Police de caractres
ForeColor Couleur de lcriture
TabIndex Ordre daccs avec la touche TAB
Visible Contrle visible ou non (True/False)
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

38

lments visuels
Quelques vnements commun :
Change Modification du contenu du contrle
Click Clic de souris sur le contrle
DblClick Double clic de souris sur le contrle
Drag Glisser/dposer
GotFocus Gain du focus
Key vnements provenant du clavier
LostFocus Perte du focus
Mouse vnements provenant de la souris autres

que le clic
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

39

lments visuels
Manipulation de contrle par programme
Ex. Procdure gnrique daffichage dun texte dans
une tiquette (label).
Public Sub Etiq_Affiche (etiq as Object,
ByVal msg as String)
etiq.Caption = msg
End Sub

Ex. dappels :

VB/BD

Etiq_Affiche label1, "coucou"


Etiq_Affiche label2, message
http://eric.univ-lyon2.fr/~jdarmont/

40

Plan du cours
I.

Objectifs

II. Rappels de Visual Basic


! III. Connexion VB-Access
IV. Connexion Excel-Access
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

41

Contrle Donne
Un contrle Donne (Data) permet de connecter
une feuille VB donne une table ou une
requte dune base de donnes Access.
Proprits principales :
Connect : Type de fichier base de donnes (Access)
DatabaseName : Nom du fichier .mdb contenant la
base de donnes
RecordSource : Nom de la table/requte source
ReadOnly : Empche la modification des donnes si
mis True (fortement conseill pour les requtes)
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

42

Contrle Donne
Affichage des donnes associes un contrle
Donne :

tiquettes (texte)
Zones de texte (texte modifiable)
Zones de liste et zones de listes modifiables
Images et dessins
Contrles spcialiss (voir plus loin)

Proprits utilises :
DataSource : Nom du contrle Donne utiliser
DataField : Nom de lattribut afficher
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

43

Contrle Donne
Exemple :
Soit la table Authors (Au_ID, Author, YearBorn) de la
base de donnes biblio.mdb.
On souhaite afficher les numros identifiants des
auteurs et permettre la modification de leurs noms.

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

44

Contrle Donne
Contrle Donne Auteurs :
Connect = Access
DatabaseName = E:\VB5\biblio.mdb
RecordSource = Authors

Contrle tiquette Numro :


DataSource = Auteurs
DataField = Au_ID

Contrle Zone de texte Nom :


DataSource = Auteurs
DataField = Author
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

45

Contrles Zones de liste BD


Contrles Zone de liste BD (DBList) et Zone
de liste BD modifiable (DBCombo) Zones de
liste (ListBox) et Zones de liste modifiables
(ComboBox) standard
Affichage dinformations provenant dune base
de donnes
Permettent de travailler sur deux tables mises en
relation (au sens Access du terme)
Diffrence DBList / DBCombo : DBCombo
choix dans la liste + saisie au clavier possible
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

46

Contrles Zones de liste BD


Proprits principales :

DataSource : Contrle Donne primaire


DataField : Cl trangre dans Donne primaire
RowSource : Contrle Donne secondaire (liste)
ListField : Cl primaire dans Donne secondaire

Exemple : Soient les tables


Titles (ISBN, Title, PubID)
Publishers (PubID, Name, Address).
On souhaite, pour chaque titre, pouvoir slectionner le
numro de lditeur (publisher) parmi la liste de tous
les numros dditeurs.
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

47

Contrles Zones de liste BD

Contrle Donne Titres :


Connect = Access
DatabaseName = E:\VB5\biblio.mdb
RecordSource = Titles
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

48

Contrles Zones de liste BD


Contrle Donne diteurs :

Connect = Access
DatabaseName = E:\VB5\biblio.mdb
RecordSource = Publishers
Visible = False

Contrle tiquette Numro :


DataSource = Titres
DataField = ISBN
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

49

Contrles Zones de liste BD


Contrle tiquette Titre :
DataSource = Titres
DataField = Title

Contrle Zone de liste BD Num_Eds :

VB/BD

DataSource = Titres
DataField = PubID
RowSource = diteurs
ListField = PubID
http://eric.univ-lyon2.fr/~jdarmont/

50

Contrle Grille BD
Contrle Grille BD (DBGrid) Grille
(MSFlexGrid)
Affichage dinformations provenant dune base
de donnes
Permet dafficher sous forme tabulaire (faon
grille Excel) et de modifier les donnes dune
table
Proprit principale :
DataSource : Nom du contrle Donne utiliser
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

51

Contrle Grille BD
Exemple : La table Authors

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

52

Contrle Grille BD
Contrle Donne Auteurs :

Connect = Access
DatabaseName = E:\VB5\biblio.mdb
RecordSource = Authors
Visible = False

Contrle Grille BD Grille_Auteurs :


DataSource = Auteurs
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

53

Assistant Feuilles de Donnes


Permet, de manire interactive, de crer
automatiquement des feuilles VB connectes
des bases de donnes
Accs par le menu Complments
Si lAssistant Feuilles de donnes napparat
pas, il est possible de lajouter :
1) Menu Complments
2) Gestionnaire de Complments
3) VB Data Form Wizard
4) OK.
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

54

Assistant Feuilles de Donnes


tapes de la cration dune feuille de donnes

Slection du type de base de donnes


Slection du fichier contenant la base de donnes
Slection de la prsentation
Slection de la ou des tables/requtes sources
Slection des attributs afficher
Slections des boutons de commande prprogramms (Ajouter, Supprimer, Rafrachir, Mettre
jour, Fermer)
Choix du nom de la feuille
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

55

Assistant Feuilles de Donnes


Appel dune feuille de donnes :
Dans lvnement Click dun Bouton de
commande ou Form_Load de la feuille
principale dun projet :
nom_feuille_donnes.Show

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

56

Manipulation de donnes par programme


Utilisation de la proprit RecordSet (table)
dun contrle Donne et de ses sousproprits et mthodes (procdures)
Positionnement dans la table :
Proprits :
BOF
EOF
AbsolutePosition
VB/BD

True si dbut de table


True si fin de table

Position du tuple dans la table

http://eric.univ-lyon2.fr/~jdarmont/

57

Manipulation de donnes par programme


Mthodes :
MoveFirst Dplacement en 1re position
Dplacement en dernire position
MoveLast
Dplacement la position suivante
MoveNext
MovePrevious Dplacement la position prcdente
Exemple :
Auteurs.RecordSet.MoveFirst
While Not (Auteurs.RecordSet.EOF)
Auteurs.RecordSet.MoveNext
Wend
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

58

Manipulation de donnes par programme


Accs aux donnes :
Proprit Fields("attribut").Value
Ex. Nom = Auteurs.RecordSet.Fields("Author").Value
Comptage des tuples :
Proprit RecordCount (nombre de tuples accds
dans un objet Recordset)

Ex.
VB/BD

Auteurs.RecordSet.MoveLast
c = Auteurs.RecordSet.RecordCount
http://eric.univ-lyon2.fr/~jdarmont/

59

Manipulation de donnes par programme


Recherche dans la table :
Proprit :
Bookmark Signet (chane) pointant chaque enregistrement
Si le signet est mmoris dans une position donne,
il est possible par la suite de sauter directement
au tuple correspondant.
Dim b as String
Ex.
b = Auteurs.RecordSet.Bookmark
Auteurs.RecordSet.MoveLast
Auteurs.RecordSet.Bookmark = b
' Retour la position initiale
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

60

Manipulation de donnes par programme


Mthodes :
FindFirst("condition_SQL")
Trouve le 1er tuple correspondant la condition
FindLast("condition_SQL")
Trouve le dernier correspondant la condition
FindNext("condition_SQL")
Trouve le tuple suivant correspondant la condition
FindPrevious("condition_SQL")
Trouve le tuple prcdent correspondant la condition

Ex. Auteurs.RecordSet.FindFirst
VB/BD

("Author = 'Metzger'")

http://eric.univ-lyon2.fr/~jdarmont/

61

Manipulation de donnes par programme


Mises jour :
Mthode AddNew (ajout de tuple en fin de table)
Auteurs.RecordSet.AddNew
Ex.
Mthode Delete (suppression du tuple courant)
Auteurs.RecordSet.Delete
Ex.
NB : Les modifications de tuples sont
automatiquement prises en compte si le contrle
Donne nest pas en lecture seule.
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

62

Plan du cours
I.

Objectifs

II. Rappels de Visual Basic


III. Connexion VB-Access
! IV. Connexion Excel-Access
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

63

Importations de donnes externes


Principe : Copie du rsultat dune requte dans
une feuille Excel (utilisation de MS Query)
Marche suivre :

Menu Donnes / Donnes externes / Crer une req.


Choix de la source de donnes : Type de BD
Slection de la base de donnes : Fichier BD
Slection table(s)/requte(s) et attribut(s)
Requte
Filtrage des donnes (optionnel)
MS Query
Tri des donnes (optionnel)
Envoi des donnes dans une feuille Excel

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

64

Importations de donnes externes


Exemple :

VB/BD

Source de donnes : MS Access Database


Base de donnes : E:\VB5\biblio.mdb
Table : Authors
Attributs : Au_ID, Author, YearBorn
Filtrage : YearBorn nest pas nul
Tri : 1re cl = Author, ordre croissant
http://eric.univ-lyon2.fr/~jdarmont/

65

Importations de donnes externes

VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

66

Proprits de la plage de donnes externes


Accessibles par le bouton droit ou le menu
Donnes / Donnes externes
Dfinition de la requte : Ne pas modifier
Contrle de lactualisation :
Actualisation en arrire-plan
Actualisation priodique (toutes les X minutes)
Actualisation louverture du fichier

Format et disposition des donnes :


Afficher les noms dattributs
Afficher les numros de ligne
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

67

Actualisation / Modification de la requte


Fonctions accessibles par le bouton droit ou le
menu Donnes / Donnes externes
Actualisation : Permet de prendre en compte
les modifications ventuellement survenues
dans la source de donnes Access (table/requte)
NB : Les modifications effectues sur les donnes dans
Excel ne sont pas prises en compte dans Access.

Modification de la requte MS Query :


Changement des paramtres de la requte
(table, champs, filtres, tri)
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

68

Fonctions du menu Donnes


Trier (fonction standard dExcel)
Filtre (fonction standard dExcel)
Grille : Accs aux donnes par formulaire

Navigation parmi les tuples (suivant/prcdent)


Recherche par valeur dattribut(s)
Ajout de tuple
Suppression de tuple

Sous-totaux : Calcul de sous-totaux (somme,


produit, compte, moyenne) par groupes de donnes
Ex. Montant total de commandes pour une date donne
VB/BD

http://eric.univ-lyon2.fr/~jdarmont/

69

Vous aimerez peut-être aussi