Auteur: Christian Herbé
Date: Octobre 2001
MAJ:
Selon la nature des données, il n'est pas forcément obligatoire
de créer une base de données. Dans beaucoup de cas relativement
simples, il est préférable d'utiliser les filtres plus ou
moins complexes du tableur. Voir le chapitre Gestion
de données dans la page Excel avancé. Ce lien donne
aussi un exemple rapide d'utilisation de MS-Query.
Une base de données est tout simplement une organisation particulière
d'une masse d'informations ou d'observations. Cette organisation des données
a généralement pour but de simplifier l'accès aux
données et d'économiser l'espace occupé par les fichiers
informatiques en réduisant la redondance d'informations.
Un carnet d'adresses peut constituer une base de données assez
simple à concevoir. A l'opposé, le responsable d'un grand
magasin peut rassembler le fichier du personnel, le fichier clients, la
liste des produits en stock et les ventes par secteur et par vendeur
dans une base de données complexe!
Le bon fonctionnement d'une base de données dépend avant
tout de son organisation et c'est là la vraie difficulté.
Il faut commencer par réfléchir à la structure de
l'information avant de faire quoi que ce soit! Immédiatement après,
il faudra bien cibler les besoins de l'utilisateur. Si l'utilisateur n'est
pas le concepteur, il faudra donner suffisament de souplesse pour intégrer
de nouvelles demandes pouvant apparaitre en cours d'utilisation. Le choix
du logiciel ne vient qu'après et dépendra de la complexité
et du volume des données.
Je pense, mais ça n'engage que moi,
que la construction d'une base de données assez simple à
partir d'un tableur est un "point de passage obligé" pour bien comprendre
les difficultés de mise en place et d'utilisation. La plupart des
personnes utilisant régulièrement un poste informatique connaissent
les bases du fonctionnement d'un tableur alors que les logiciels de bases
de données sont moins connus. Créer sa première base
de données sur son tableur favori permet de s'affranchir des difficultés
informatiques liées au logiciel pour se consacrer exclusivement
à l'organisation des données et à la conception des
requêtes!
PREPARATION DU FICHIER EXCEL
L'exemple utilisé est le code postal Français. Il a l'avantage d'être simple dans sa structure et d'être connu de beaucoup d'utilisateurs. Exemple:
|
|
|
|
|
|
|
|
|
|
|
|
Dans XL, sélectionnez toutes les données constituant la
base de données y compris les titres de colonnes.Définissez
un nom pour cette zone
depuis les menus Insertion | Nom
| Définir... (obligatoire pour utiliser
MSQUERY)
L'ensemble des données de la feuille suivante se nomme Commune:
- la première contient la liste des communes, les numéros
de départements et les code postaux:
- la deuxième contient les numéros,
les noms de départements et les numéros de régions.
Elle se nomme Departement :
- la troisième contient les noms et numéros
de régions. Elle se nomme Region :
Dans la feuille "Communes", on a entré le numéro de département
également disponible dans la feuille "Départements" qui elle
même contient le numéro de région. Bien que redondante,
cette information est nécessaire pour établir les liens entre
feuilles. En effet, l'information éclatée devra être
réassemblée lors des requêtes et l'on se servira de
ces variables pour établir des liens entre les tables.
vérifiez qu'il a été installé. Vous devez
trouver le fichier éxecutable ici:
\program Files\ Office\ MSQUERY.EXE ou MSQRY32.EXE
Si il est absent, refaite une installation partielle de MS-Office et
cochez "Data Access" puis MSQUERY:
Vous devez également vérifier que les pilotes (drivers)
sont installés:
- panneau de configuration
- ODBC 32 ou BDE Administrateur
- vérifiez que le driver pour Excel est présent
sinon, sélectionnez le dans la liste.
On donne ici le moyen d'utilisation le plus simple de QUERY CAD depuis
les menus Excel:
Données
Données externes
Créer une requête (démarrage de Query
en tâche de fond).
écran 1
Sélectionnez Nouvelle source de données puis cliquez
sur le bouton Ok:
écran 2
écran 3
écran 4
Sélectionnez le fichier "code postal.xls":
écran 5
écran 6
écran 7
Depuis le cadre de gauche,sélectionnez les variables ou colonnes: "commune, département et code postal" et glissez les dans le cadre de droite à l'aide du signe > et cliquez sur suivant..
écran 8
Sélectionnez la variable à l'intérieur de laquelle vous voulez filtrer les données. Définissez vos critères de tri et cliquez sur suivant puis gardez les options par défaut des autres écrans.
écran 9
Cet exemple n'avait d'autre but que de vous familiariser avec l'utilisation
de MSQUERY depuis Excel.
Base de données multitables et requêtes
Partant du code postal Français comme exemple, le département
de M&M comprend 594 communes; la région Lorraine comprend 4
départements. Si on stocke toute l'information dans une seule feuille,
pour la seule région de Lorraine, on va répéter:
env 600 communes multiplié par 4 départements
= 2400 fois le nom de la région et environ 600 fois le nom du département
ce qui génére une redondance beaucoup trop importante. Il
est beaucoup plus efficace d'éclater l'information en 3 feuilles
ou tables: ville, département et région.
On est ici dans un cas de liaison hirarchique ou liaison "un à
plusieurs" (cas le plus simple):
la ville est comprise dans le département lui-même compris
dans la région.
Avant de faire une requête sur un fichier Excel depuis Query,
vous devez nommer la zone de données à
interroger.
Dans l'exemple constitué du code postal, nous avons "éclaté"
l'information dans trois feuilles du fichier XL. En
matière de base de données, ces feuilles s'appellent des
TABLES. Chacune contient un type d'information particulier. En outre, chaque
table doit avoir une information commune à une autre table pour
pouvoir établir des liens, exemple: dans la table "Villes", les
deux premiers chiffres du code postal constituent le n° de département
et se retrouvent aussi dans la table "Départements". On se servira
de ce type de lien pour réassembler l'information éclatée
en plusieurs tables.
Pour interroger le fichier base de données, reprenez à
l'écran 8 de la page précédente. Cliquez sur les croix
des tables "Communes, départements et régions" et faite passer
à droite les mêmes variables que la figure suivante:
Vous allez obtenir ces 2 écrans:
Depuis l'écran Query, allez dans le menu "Critères" puis "Ajouter un critère" puis tapez un nom de commune. Query devrait afficher tous les renseignements ce cette commune!