Sommaire

Transcription

Sommaire
Sommaire
Partie A
Notions de base . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1
Planification d’une base de données . . . . . . . . . . . . . . . 31
1.1
1.2
1.3
1.4
1.5
Par où commencer ? . . . . . . . . . . . . . . . . . . . . . . . . . .
Présentation du cas pratique . . . . . . . . . . . . . . . . . . . . .
Quelques règles de bon sens . . . . . . . . . . . . . . . . . . . . .
Conception des tables : une méthode empirique . . . . . . .
Tables et relations . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Affinage des tables . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mécanique des relations . . . . . . . . . . . . . . . . . . . . . . .
Relation Un à Plusieurs . . . . . . . . . . . . . . . . . . . . . . . .
Relations Plusieurs à Plusieurs . . . . . . . . . . . . . . . . . . . .
Relation Un à Un . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Relation réflexive . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Finalisation de l’analyse . . . . . . . . . . . . . . . . . . . . . . .
Trucs et Astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mes factures comportent trois dates d’échéance. Dois-je ajouter
des champs nommés Échéance1, Échéance2 et Échéance3
dans la table Factures ? . . . . . . . . . . . . . . . . . . . . . . . . .
Comment ajouter un champ supplémentaire dans une table
en fonction des besoins ? . . . . . . . . . . . . . . . . . . . . . . . .
La construction d’une table des villes ne complique-t-elle pas
le système ? D’autant que sa clef primaire est peu parlante .
33
34
35
37
38
41
47
47
49
51
52
54
56
56
57
58
Sommaire
Soit une table Facture liée à une table Produits.
Que se passe-t-il si les prix des produits sont modifiés ? . . . . 61
La table des visites prévoit un champ Date de visite. Si je souhaite des
statistiques par mois, dois-je prévoir un champ supplémentaire ? . 61
1.6
2
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Les tables et relations, fondations de la base de données . 63
2.1
2.2
2.3
2.4
2.5
2.6
2.7
L’environnement de travail Access . . . . . . . . . . . . . . . . 65
Plan de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Obtention d’aide dans Access . . . . . . . . . . . . . . . . . . . . . 68
Fenêtre Base de données . . . . . . . . . . . . . . . . . . . . . . . . 69
Dualité Concepteur/Utilisateur . . . . . . . . . . . . . . . . . . . . 74
Création d’une base de données . . . . . . . . . . . . . . . . . . 74
Découverte des modèles livrés avec Access . . . . . . . . . . . . 74
Modèles supplémentaires . . . . . . . . . . . . . . . . . . . . . . . 78
Création manuelle d’une base de données . . . . . . . . . . . . 80
Une première table . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Table des types de biens . . . . . . . . . . . . . . . . . . . . . . . . 83
Types de données associés aux champs . . . . . . . . . . . . . . . 87
Propriétés des champs . . . . . . . . . . . . . . . . . . . . . . . . . 90
Gestion des champs de la table . . . . . . . . . . . . . . . . . . . 101
Autres tables du projet . . . . . . . . . . . . . . . . . . . . . . . 102
Saisie dans les tables . . . . . . . . . . . . . . . . . . . . . . . . . 105
Ajout ou modification d’enregistrements . . . . . . . . . . . . . 106
Suppression d’enregistrements . . . . . . . . . . . . . . . . . . . 108
Options d’affichage de la table . . . . . . . . . . . . . . . . . . . 109
Relations et intégrité référentielle . . . . . . . . . . . . . . . . 111
Préparation des relations . . . . . . . . . . . . . . . . . . . . . . . 112
Mise en place des relations . . . . . . . . . . . . . . . . . . . . . . 114
Intégrité référentielle . . . . . . . . . . . . . . . . . . . . . . . . . 118
Relations et listes de choix . . . . . . . . . . . . . . . . . . . . . . 124
Listes de choix indépendantes . . . . . . . . . . . . . . . . . . . . 129
Paramétrage manuel des listes de choix . . . . . . . . . . . . . 131
Compléments sur les relations . . . . . . . . . . . . . . . . . . . 136
Organisation des objets dans la base de données . . . . . . 141
Changement de noms d’objets . . . . . . . . . . . . . . . . . . . 141
Suppression d’objets . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Convention d’attribution des noms . . . . . . . . . . . . . . . . 144
Description des objets de la base de données . . . . . . . . . . 147
Sommaire
Options d’affichage de la base de données . . . .
Classement des objets à l’aide de groupes . . . . .
Affichage d’objets supplémentaires . . . . . . . . .
Description de la base de données . . . . . . . . . .
Raccourcis pour un accès rapide aux objets . . . .
Impression de la structure de la base de données
2.8
2.9
3
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
148
149
153
153
156
157
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible de modifier la structure des tables une fois
que la base de données est terminée ? . . . . . . . . . . . . . .
Pourquoi ne pas donner systématiquement une taille de
255 caractères à chaque champ Texte ? . . . . . . . . . . . . . .
Dans le même esprit, ne serait-il pas plus simple de se passer
des champs Texte et de préférer les champs Mémo ? . . . .
Lorsque je crée un champ dans une table, Access lui applique
parfois un index automatiquement. Pourquoi ? . . . . . . . .
Lorsque j’établis une relation entre deux tables, pourquoi
Access me propose-t-il systématiquement une relation "Un1
à Un1" au lieu d’une relation "Un1 à Plusieurs". ? . . . . . . .
Est-il possible de gérer plusieurs fenêtres Relations ? . . . .
Lors de la saisie dans un champ NuméroAuto, Access "perd"
des numéros. Pourquoi ? . . . . . . . . . . . . . . . . . . . . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
159
159
159
160
160
161
161
162
162
Exploitation des données au travers des requêtes . . . . 163
3.1
3.2
3.3
Conception de requêtes . . . . . . . . . . . . . . . . . . . . . . .
Placement de champs sur la grille de requête . . . . . . . . . .
Suppression d’un champ . . . . . . . . . . . . . . . . . . . . . . .
Ordonnancement des champs dans la grille de requête . . .
Propriétés des champs . . . . . . . . . . . . . . . . . . . . . . . . .
Des alias pour renommer tables et champs . . . . . . . . . . .
Tester la requête . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Enregistrer la requête . . . . . . . . . . . . . . . . . . . . . . . . .
Modifier une requête . . . . . . . . . . . . . . . . . . . . . . . . .
Compréhension des jointures . . . . . . . . . . . . . . . . . . .
Requête sans jointure . . . . . . . . . . . . . . . . . . . . . . . . .
Jointure interne ou équi-jointure . . . . . . . . . . . . . . . . . .
Jointure externe gauche et droite . . . . . . . . . . . . . . . . .
Tri des enregistrements . . . . . . . . . . . . . . . . . . . . . . .
Tri simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Tris multiples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
166
167
170
170
171
171
172
174
174
175
176
178
180
184
185
186
Sommaire
3.4
3.5
3.6
3.7
3.8
3.9
3.10
Filtrage des informations . . . . . . . . . . . . . . . . . . . . . .
Critères applicables aux champs Texte et Mémo . . . . . . . .
Critères applicables aux champs Numériques . . . . . . . . . .
Critères applicables aux champs Date/Heure . . . . . . . . . .
Critères applicables aux champs Oui/Non . . . . . . . . . . . .
Gestion des valeurs Null . . . . . . . . . . . . . . . . . . . . . . .
Combinaison de critères . . . . . . . . . . . . . . . . . . . . . . .
Requêtes paramétrées . . . . . . . . . . . . . . . . . . . . . . . . .
D’autres manières de filtrer... . . . . . . . . . . . . . . . . . . . .
Requêtes de regroupement (ou d’agrégation) . . . . . . . .
Mise en place d’un regroupement . . . . . . . . . . . . . . . . .
Filtrage d’une requête de regroupement . . . . . . . . . . . . .
Requêtes Analyse croisée . . . . . . . . . . . . . . . . . . . . . .
Calculs élémentaires . . . . . . . . . . . . . . . . . . . . . . . . .
Du VBA dans les requêtes . . . . . . . . . . . . . . . . . . . . .
Fonctions mathématiques générales . . . . . . . . . . . . . . . .
Fonctions trigonométriques . . . . . . . . . . . . . . . . . . . . .
Fonctions de Date/Heure . . . . . . . . . . . . . . . . . . . . . . .
Fonctions de manipulation de chaînes de caractères . . . . .
Fonctions de domaine . . . . . . . . . . . . . . . . . . . . . . . . .
Fonctions de conversion . . . . . . . . . . . . . . . . . . . . . . .
Fonctions de mise en forme (ou de formatage) . . . . . . . .
Fonctions diverses . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vos propres fonctions . . . . . . . . . . . . . . . . . . . . . . . . .
Requêtes Action . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mise à jour des données dans des requêtes Sélection . . . . .
Requête Suppression . . . . . . . . . . . . . . . . . . . . . . . . .
Requête Mise à jour . . . . . . . . . . . . . . . . . . . . . . . . . .
Requête Ajout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Requête Création de table . . . . . . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dans une requête, pourquoi certaines colonnes sont-elles
nommées automatiquement Expr1001, Expr1002 ? . . . . . .
Comment taper des critères contenant des guillemets ? . . .
L’addition de plusieurs champs est vide si au moins l’un
d’entre eux a la valeur Null. Comment faire ? . . . . . . . . .
Comment calculer le début et la fin d’un mois donné ? . . .
Est-il possible de lister des enregistrements au hasard
à l’aide d’une requête ? . . . . . . . . . . . . . . . . . . . . . . . .
Comment mettre en évidence les doublons d’une table ? . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
187
187
190
191
192
193
193
194
198
201
201
204
206
209
214
215
217
218
225
229
235
239
243
248
250
251
253
255
256
258
260
260
260
260
261
261
262
262
Sommaire
4
Construction d’une interface graphique à l’aide
de formulaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
4.1
4.2
4.3
4.4
4.5
4.6
4.7
Construction d’un formulaire dépendant . . . . . . . . . . . 268
Préparation du formulaire . . . . . . . . . . . . . . . . . . . . . . 269
Assistant Formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Les différents types de formulaires . . . . . . . . . . . . . . . . 274
Manipulations de base sur le formulaire . . . . . . . . . . . 278
Le formulaire en mode Création . . . . . . . . . . . . . . . . . . 278
Techniques de sélection d’objets . . . . . . . . . . . . . . . . . . 280
Déplacement et dimensionnement d’objets . . . . . . . . . . . 282
Techniques de mise en forme . . . . . . . . . . . . . . . . . . . 291
Mise en forme des sections de formulaire . . . . . . . . . . . . 292
Mise en forme du formulaire . . . . . . . . . . . . . . . . . . . . 293
Optimisation de la mise en forme . . . . . . . . . . . . . . . . . 297
Ajout d’objets sur un formulaire . . . . . . . . . . . . . . . . . 302
Objets graphiques élémentaires . . . . . . . . . . . . . . . . . . . 305
Objets fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
Ordre de tabulation . . . . . . . . . . . . . . . . . . . . . . . . . 346
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Lorsque je clique directement dans une étiquette pour en
modifier le texte, les couleurs appliquées font
que je dois taper le texte "en aveugle"... . . . . . . . . . . . . . 348
Pourquoi un champ calculé affiche-t-il systématiquement
le message d’erreur #NOM! ? . . . . . . . . . . . . . . . . . . . 348
Mon champ calculé ne se stocke pas dans la table associée
au formulaire... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Est-il possible d’afficher sur un formulaire des informations
provenant de plusieurs tables ou requêtes ? . . . . . . . . . . . 349
Lorsque l’action d’un bouton de commande est annulée,
une boîte de dialogue affiche un message peu explicite. . . . 350
Un clic sur un bouton de commande ne produit aucun effet.
Pourquoi ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
Est-il possible de mettre à jour une liste déroulante
de recherche lorsque j’utilise les boutons de déplacement
pour naviguer entre les enregistrements ? . . . . . . . . . . . . 351
Comment afficher, dans une zone de texte, une colonne
quelconque d’une liste déroulante ? . . . . . . . . . . . . . . . . 352
En fin d’enregistrement, un appui sur la touche Tab provoque
le passage à l’enregistrement suivant. Comment revenir plutôt
au début de la fiche ? . . . . . . . . . . . . . . . . . . . . . . . . . 353
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Sommaire
5
Plus loin sur les formulaires . . . . . . . . . . . . . . . . . . . . . 355
5.1
5.2
5.3
5.4
5.5
5.6
6
Sous-formulaires . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Création d’un sous-formulaire à l’aide de l’Assistant . . . . .
Champs père et champs fils . . . . . . . . . . . . . . . . . . . . .
Mise en place manuelle d’un sous-formulaire . . . . . . . . . .
Reports de valeurs entre formulaire et sous-formulaire . . .
Filtrage d’informations sur le formulaire . . . . . . . . . . .
Filtre par valeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Filtre par sélection . . . . . . . . . . . . . . . . . . . . . . . . . . .
Filtre par formulaire . . . . . . . . . . . . . . . . . . . . . . . . . .
Tableaux croisés dynamiques . . . . . . . . . . . . . . . . . . .
Création d’un tableau croisé dynamique . . . . . . . . . . . . .
Manipulation du tableau croisé dynamique . . . . . . . . . . .
Personnalisation du tableau croisé dynamique . . . . . . . . .
Graphiques croisés dynamiques . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible d’ouvrir directement un sous-formulaire
depuis le formulaire ? . . . . . . . . . . . . . . . . . . . . . . . . .
Entre la liste de choix et le sous-formulaire,
quelle est la meilleure technique ? . . . . . . . . . . . . . . . . .
Comment ajouter un titre à un graphique croisé dynamique ? .
Comment, sur une courbe par exemple, afficher la valeur
de chaque point ? . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible de juxtaposer plusieurs graphiques ? . . . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
357
359
363
364
367
371
372
373
374
375
376
379
383
385
388
388
388
388
389
390
391
Techniques d’impression . . . . . . . . . . . . . . . . . . . . . . . 393
6.1
6.2
6.3
Listes simples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Préparation de la source de l’état . . . . . . . . . . . . . . . . .
Construction de l’état . . . . . . . . . . . . . . . . . . . . . . . . .
Travail sur l’état . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
États de regroupement . . . . . . . . . . . . . . . . . . . . . . .
Regroupement par l’Assistant État . . . . . . . . . . . . . . . .
Sections de regroupement . . . . . . . . . . . . . . . . . . . . . .
Regroupement manuel . . . . . . . . . . . . . . . . . . . . . . . .
Courrier et publipostage . . . . . . . . . . . . . . . . . . . . . .
Fiche Produit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sous-états . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
396
396
397
404
408
409
413
416
418
418
422
Sommaire
6.4
6.5
6.6
6.7
6.8
6.9
Publipostage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Étiquettes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Réalisation d’une planche d’étiquettes . . . . . . . . . . . . . .
Personnalisation des étiquettes . . . . . . . . . . . . . . . . . . .
Graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Un premier graphique . . . . . . . . . . . . . . . . . . . . . . . . .
Personnalisation d’un graphique . . . . . . . . . . . . . . . . . .
Aperçu des données réelles dans Microsoft Graph . . . . . .
Liaison du graphique à un enregistrement . . . . . . . . . . . .
Intégration d’un état à l’interface graphique . . . . . . . . .
Impression d’un état via un bouton de commande . . . . . .
Filtrage d’un état en fonction du formulaire . . . . . . . . . .
Transmission d’un état . . . . . . . . . . . . . . . . . . . . . . .
Exportation vers Word ou Excel . . . . . . . . . . . . . . . . . .
Exportation au format Snapshot . . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Quelle est la taille maximale d’un état ? . . . . . . . . . . . . .
Pourquoi une page sur deux de mon état est-elle blanche ? .
Est-il possible de convertir un formulaire en état ? . . . . . .
Comment imprimer plusieurs pages d’un contrôle Onglet ? .
Comment répéter une ligne de titres en haut de chaque page ? .
Mon état est basé sur une requête paramétrée.
Comment afficher les paramètres sur l’état ? . . . . . . . . . .
Comment numéroter les enregistrements d’un état ? . . . . .
Comment appliquer une couleur différente
aux enregistrements pairs et impairs de l’état ? . . . . . . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
424
426
426
430
432
432
434
437
438
441
441
441
443
443
444
446
446
446
446
447
447
448
448
449
450
Partie B
Techniques avancées . . . . . . . . . . . . . . . . . . . . 451
7
Finalisation d’une application Access . . . . . . . . . . . . . . 453
7.1
7.2
7.3
7.4
Menu général automatique . . . . . . . . . . . . . . . . . . . .
Formulaire d’accueil personnalisé . . . . . . . . . . . . . . . .
Boîte de dialogue d’information . . . . . . . . . . . . . . . . .
Barres de menus et barres d’outils . . . . . . . . . . . . . . .
Création d’une barre d’outils . . . . . . . . . . . . . . . . . . . .
Création d’une barre de menus . . . . . . . . . . . . . . . . . . .
Barres de menus contextuels . . . . . . . . . . . . . . . . . . . .
455
462
464
466
467
473
477
Sommaire
7.5
7.6
7.7
7.8
7.9
8
Options de démarrage . . . . . . . . . . . . . . . . . . . . . . . .
Raccourci de démarrage . . . . . . . . . . . . . . . . . . . . . .
Aide en ligne personnalisée . . . . . . . . . . . . . . . . . . . .
Élaboration d’un projet d’aide en ligne . . . . . . . . . . . . . .
Rédaction des rubriques d’aide . . . . . . . . . . . . . . . . . . .
Intégration des rubriques au projet . . . . . . . . . . . . . . . .
Attribution d’un identifiant aux rubriques d’aide . . . . . . .
Compilation du fichier d’aide . . . . . . . . . . . . . . . . . . . .
Intégration du fichier d’aide à l’application Access . . . . . .
Construction d’un sommaire . . . . . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible de construire un "splash screen" à partir d’un
formulaire ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Je souhaiterais, sur ma boîte de dialogue de copyright,
placer un lien vers mon site Internet. Comment faire ? . . .
Est-il possible de copier des éléments d’une barre de menus
vers une autre ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible de désactiver la touche Maj qui passe outre
toutes les options de démarrage ? . . . . . . . . . . . . . . . . .
Est-il possible de faire en sorte qu’un fichier d’aide s’ouvre
sur une page spécifique du sommaire ? . . . . . . . . . . . . . .
Est-il possible d’ouvrir en Visual Basic une rubrique d’aide
spécifique ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
480
482
484
485
488
492
493
497
498
500
504
504
505
505
505
506
506
507
Travail en environnement multi-utilisateur . . . . . . . . . . 509
8.1
8.2
Mise en place d’une base de données en réseau . . . . . .
Client/serveur et serveur de fichiers . . . . . . . . . . . . . . . .
Partage d’une base de données complète . . . . . . . . . . . .
Fractionnement de la base de données . . . . . . . . . . . . . .
Notion de verrouillage . . . . . . . . . . . . . . . . . . . . . . . . .
Sécurisation d’une base de données Access/Jet . . . . . . .
Masquage d’objets de la base de données . . . . . . . . . . . .
Options de démarrage . . . . . . . . . . . . . . . . . . . . . . . . .
Gestion de la touche Maj au démarrage . . . . . . . . . . . . .
Fichiers .mde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Protection par mot de passe . . . . . . . . . . . . . . . . . . . . .
Protection du code Visual Basic . . . . . . . . . . . . . . . . . .
Cryptage/décryptage d’une base de données . . . . . . . . . .
Sécurité utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . .
511
512
513
515
522
528
530
531
531
534
536
538
539
541
Sommaire
8.3
8.4
8.5
Travail en mode Déconnecté : la réplication . . . . . . . . .
Comprendre la réplication . . . . . . . . . . . . . . . . . . . . . .
Quand utiliser la réplication ? . . . . . . . . . . . . . . . . . . . .
Mettre en œuvre la réplication . . . . . . . . . . . . . . . . . . .
Réplication via Access . . . . . . . . . . . . . . . . . . . . . . . . .
Réplication par le Porte-documents . . . . . . . . . . . . . . . .
Le gestionnaire de réplications . . . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible de scinder une base de données en plus
de deux fichiers .mdb ? . . . . . . . . . . . . . . . . . . . . . . . .
Est-il envisageable d’utiliser Access à distance ? . . . . . . . .
Un fichier .mde peut-il être converti en base de données .mdb ? .
Après avoir mis en place la sécurité utilisateur,
toutes mes bases de données sont protégées et me demandent
un mot de passe. Pourquoi ? . . . . . . . . . . . . . . . . . . . . .
Pourquoi une base sécurisée s’ouvre-t-elle sans restriction
sur un autre ordinateur ? . . . . . . . . . . . . . . . . . . . . . . .
Comment transformer une base répliquée en une base normale ? .
Une base répliquée peut-elle être déplacée manuellement ? .
Comment éviter la suppression d’enregistrements
dans un réplica ? . . . . . . . . . . . . . . . . . . . . . . . . . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
560
561
562
562
563
571
573
576
576
576
576
576
577
577
577
578
578
Partie C
Programmation . . . . . . . . . . . . . . . . . . . . . . . . . . 579
9
Administration d’une base de données . . . . . . . . . . . . . 581
9.1
9.2
9.3
9.4
Sauvegarde d’une base de données . . . . . . . . . . . . . . .
Compactage d’une base de données . . . . . . . . . . . . . .
Techniques de compactage . . . . . . . . . . . . . . . . . . . . . .
Compactage et NuméroAuto . . . . . . . . . . . . . . . . . . . .
Audit de la base de données . . . . . . . . . . . . . . . . . . . .
Documentation de la base de données . . . . . . . . . . . . . .
L’analyseur de performance . . . . . . . . . . . . . . . . . . . . .
L’analyseur de table . . . . . . . . . . . . . . . . . . . . . . . . . .
Gestion d’un parc logiciel hétérogène . . . . . . . . . . . . .
Conversion d’un fichier de version antérieure au format
Access 2002 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conversion d’un fichier Access 2002 en un format antérieur .
583
585
585
588
589
589
591
592
593
593
595
Sommaire
9.5
9.6
9.7
10
597
598
600
609
610
610
611
612
612
614
Le langage SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
10.1
10.2
10.3
10.4
10.5
10.6
11
Déploiement d’une application Access . . . . . . . . . . . .
Préparation de l’empaquetage . . . . . . . . . . . . . . . . . . .
L’Assistant Empaquetage . . . . . . . . . . . . . . . . . . . . . . .
Déploiement d’une l’application . . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pourquoi, après restauration d’une sauvegarde faite sur
CD-Rom, la base ne s’ouvre-t-elle plus qu’en lecture seule ? .
Comment lancer l’Assistant Empaquetage si l’accès à la base
de données est désactivé ? . . . . . . . . . . . . . . . . . . . . . .
Est-il possible d’installer plusieurs versions d’Access
sur le même ordinateur ? . . . . . . . . . . . . . . . . . . . . . . .
Comment résoudre les problèmes courants ? . . . . . . . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Qu’est-ce que SQL ? . . . . . . . . . . . . . . . . . . . . . . . . .
Quand faut-il faire du SQL ? . . . . . . . . . . . . . . . . . . . .
La lecture de SQL . . . . . . . . . . . . . . . . . . . . . . . . . .
Principes généraux . . . . . . . . . . . . . . . . . . . . . . . . . . .
Les principales Instructions SQL . . . . . . . . . . . . . . . .
Instruction SELECT . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction DELETE . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction UPDATE . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction INSERT INTO . . . . . . . . . . . . . . . . . . . . .
Les spécificités SQL . . . . . . . . . . . . . . . . . . . . . . . . .
Regroupement de tables par une requête UNION . . . . . .
Sous-requêtes SQL . . . . . . . . . . . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comment détecter les différences entre deux tables ? . . . .
Comment lister trois biens par catégorie ? . . . . . . . . . . . .
Est-il possible d’ajouter la mention Tous dans une liste
déroulante ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
617
618
619
620
621
621
629
630
631
633
633
634
636
636
637
639
641
Programmation par macros . . . . . . . . . . . . . . . . . . . . . . 643
11.1
Notions de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
Une première macro . . . . . . . . . . . . . . . . . . . . . . . . . . 647
Groupes de macros . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
Sommaire
11.2
11.3
11.4
11.5
11.6
11.7
12
Intégration d’une macro à l’interface graphique . . . . . . . .
Programmation avancée des macros . . . . . . . . . . . . . .
Conditions dans une macro . . . . . . . . . . . . . . . . . . . . .
Boucles dans une macro . . . . . . . . . . . . . . . . . . . . . . .
Mise au point des macros grâce à l’exécution pas à pas . . .
Quelques exemples significatifs . . . . . . . . . . . . . . . . . .
Ouverture d’objets divers . . . . . . . . . . . . . . . . . . . . . . .
Importation / exportation de données . . . . . . . . . . . . . . .
Démarrage d’un logiciel tiers . . . . . . . . . . . . . . . . . . . .
Exécution d’une commande de menu . . . . . . . . . . . . . . .
Envoi d’un message électronique . . . . . . . . . . . . . . . . . .
Les macros AutoExec et AutoKeys . . . . . . . . . . . . . . .
La macro AutoExec . . . . . . . . . . . . . . . . . . . . . . . . . .
La macro AutoKeys . . . . . . . . . . . . . . . . . . . . . . . . . .
Convertir des macros en Visual Basic . . . . . . . . . . . . .
Conversion d’une macro . . . . . . . . . . . . . . . . . . . . . . .
Exploitation des fonctions Visual Basic issues d’une conversion .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible d’imprimer les séquences macro ? . . . . . . .
Pouvons-nous désactiver temporairement une instruction
dans une macro ? . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible d’éviter les messages de confirmation produits
par une requête Action ? . . . . . . . . . . . . . . . . . . . . . . .
Une macro précise peut-elle être exécutée à l’aide
d’un raccourci Windows ? . . . . . . . . . . . . . . . . . . . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
651
655
655
658
659
660
661
663
664
665
666
670
670
672
673
674
676
678
678
679
679
680
681
Fondamentaux Visual Basic . . . . . . . . . . . . . . . . . . . . . 683
12.1
12.2
12.3
Présentation de Visual Basic . . . . . . . . . . . . . . . . . . .
Inconvénients de la programmation Visual Basic . . . . . . .
Avantages de la programmation Visual Basic . . . . . . . . . .
Visual Basic (VB) ou Visual Basic pour Applications (VBA) ? .
L’environnement de développement Visual Basic Editor .
La fenêtre Exécution . . . . . . . . . . . . . . . . . . . . . . . . . .
Modules, procédures et fonctions . . . . . . . . . . . . . . . .
Gérer les modules . . . . . . . . . . . . . . . . . . . . . . . . . . .
Procédures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ajouter, supprimer, renommer des procédures et des fonctions .
685
685
685
687
688
692
693
694
696
697
699
Sommaire
Faire interagir les procédures et les fonctions . . . . . . . . . 701
Exécuter et mettre au point un programme . . . . . . . . . . . 703
12.4
12.5
12.6
12.7
12.8
13
Les fondamentaux du langage Visual Basic . . . . . . . . .
Quelques règles d’écriture . . . . . . . . . . . . . . . . . . . . . .
Aide contextuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Types de données personnalisés . . . . . . . . . . . . . . . . . .
Tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Retour sur les procédures et fonctions . . . . . . . . . . . . . .
Interaction avec l’utilisateur . . . . . . . . . . . . . . . . . . . .
L’instruction MsgBox() . . . . . . . . . . . . . . . . . . . . . . . .
La fonction InputBox() . . . . . . . . . . . . . . . . . . . . . . . .
Structures de contrôle . . . . . . . . . . . . . . . . . . . . . . . .
Structures conditionnelles . . . . . . . . . . . . . . . . . . . . . .
Structures itératives . . . . . . . . . . . . . . . . . . . . . . . . . .
Gestion des erreurs en Visual Basic . . . . . . . . . . . . . . . .
Autres structures . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comment démarrer un autre logiciel en Visual Basic ? . . .
Une fonction peut-elle renvoyer plusieurs valeurs ? . . . . . .
La condition If ne fonctionne-t-elle pas avec la valeur Null ? .
Est-il possible d’utiliser une constante ou une variable
dans une requête ou un formulaire ? . . . . . . . . . . . . . . .
Un programme VB peut-il faire appel à un champ
de formulaire ou d’état ? . . . . . . . . . . . . . . . . . . . . . . .
Visual Basic permet-il des fonctions récursives ? . . . . . . .
Les arguments de mes fonctions peuvent-ils proposer une liste
de choix, comme le font les instructions VB intégrées ? . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
708
708
713
713
725
726
728
733
738
738
743
744
744
749
755
761
761
761
762
762
763
763
764
765
766
Programmation des formulaires et des états . . . . . . . . 767
13.1
13.2
Introduction à la programmation objet . . . . . . . . . . . .
Classes, collections et instances . . . . . . . . . . . . . . . . . . .
Bibliothèques d’objets . . . . . . . . . . . . . . . . . . . . . . . . .
L’Explorateur d’objets . . . . . . . . . . . . . . . . . . . . . . . . .
Manipulation des objets et des collections . . . . . . . . . .
Déclaration et initialisation de variables objet . . . . . . . . .
Anatomie d’un objet . . . . . . . . . . . . . . . . . . . . . . . . . .
769
769
771
773
774
775
779
Sommaire
Manipulation des collections . . . . . . . . . . . . . . . . . . . . 785
Notion de "membre par défaut" . . . . . . . . . . . . . . . . . . . 789
13.3
13.4
13.5
13.6
14
Programmation des formulaires . . . . . . . . . . . . . . . . .
Référence à un formulaire . . . . . . . . . . . . . . . . . . . . . .
Référence à un champ de formulaire . . . . . . . . . . . . . . .
Référence à un sous-formulaire . . . . . . . . . . . . . . . . . .
L’instance Me . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Événements du formulaire . . . . . . . . . . . . . . . . . . . . . .
Applications pratiques . . . . . . . . . . . . . . . . . . . . . . . . .
Filtrage dynamique des formulaires . . . . . . . . . . . . . . . .
Programmation des états . . . . . . . . . . . . . . . . . . . . . .
Événements de l’état . . . . . . . . . . . . . . . . . . . . . . . . . .
Mise en forme dynamique en Visual Basic . . . . . . . . . . .
Annulation de l’impression d’un état vide . . . . . . . . . . . .
Tracés programmés . . . . . . . . . . . . . . . . . . . . . . . . . .
Gestion des imprimantes . . . . . . . . . . . . . . . . . . . . . . .
Filtrage dynamique d’un état . . . . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Que signifie l’erreur "Bibliothèque introuvable" ? . . . . . . .
Lorsque je quitte Access, celui-ci reste présent sur la barre
des tâches de Windows. Pourquoi ? . . . . . . . . . . . . . . . .
Comment parcourir la liste de tous les objets disposés
sur un formulaire ou un état ? . . . . . . . . . . . . . . . . . . . .
Est-il possible de programmer un formulaire tabulaire à la
manière d’un état ? . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comment afficher un total intermédiaire en bas de page ? .
Plusieurs étiquettes identiques peuvent-elles être imprimées ? .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
789
789
791
792
793
794
802
821
833
833
834
836
838
847
854
855
855
856
856
857
858
860
862
Hiérarchies DAO et ADO . . . . . . . . . . . . . . . . . . . . . . . . 863
14.1
14.2
SQL, DAO ou ADO ? . . . . . . . . . . . . . . . . . . . . . . . .
Présentation des interfaces DAO et ADO . . . . . . . . . . . .
Retour sur les références . . . . . . . . . . . . . . . . . . . . . . .
Parenthèse SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Hiérarchie DAO . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vue générale du modèle objet . . . . . . . . . . . . . . . . . . .
Premiers pas avec DAO . . . . . . . . . . . . . . . . . . . . . . . .
Rétablissement de liaisons via DAO . . . . . . . . . . . . . . . .
Compactage d’une base de données via DAO . . . . . . . . .
865
865
866
867
869
869
871
879
881
Sommaire
14.3
14.4
14.5
L’objet Recordset DAO . . . . . . . . . . . . . . . . . . . . . . . .
Hiérarchie ADO . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vue générale du modèle objet . . . . . . . . . . . . . . . . . . .
L’objet Recordset ADO . . . . . . . . . . . . . . . . . . . . . . .
L’objet Command ADO . . . . . . . . . . . . . . . . . . . . . . .
Manipulation des structures via ADOX . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comment savoir quelle valeur vient de prendre un champ
NuméroAuto après l’ajout d’un enregistrement ? . . . . . . .
Comment créer une requête dans la fenêtre Base de données ? .
Est-il possible d’ouvrir un Recordset dans une autre base
de données ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Le résultat d’un Recordset peut-il être transféré dans un
tableau VB ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible d’inscrire tous les fichiers d’un dossier
dans une table ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comment ouvrir une requête paramétrée en Visual Basic ? .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
883
897
897
899
904
905
906
907
908
910
910
912
913
914
Partie D Ouverture d’Acces sur l’extérieur . . . . . . . . 915
15
Techniques de programmation avancée . . . . . . . . . . . . 917
15.1
15.2
15.3
15.4
Contrôles ActiveX . . . . . . . . . . . . . . . . . . . . . . . . . .
Généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Le contrôle Calendrier . . . . . . . . . . . . . . . . . . . . . . . .
Le composant TreeView . . . . . . . . . . . . . . . . . . . . . . .
Modules de classe . . . . . . . . . . . . . . . . . . . . . . . . . . .
Construction d’une classe d’objet . . . . . . . . . . . . . . . . . .
Utilisation d’un objet personnalisé . . . . . . . . . . . . . . . . .
Les événements Initialize et Terminate . . . . . . . . . . . . . .
Événements de classe . . . . . . . . . . . . . . . . . . . . . . . . .
Construction dynamique de formulaires ou d’états . . . .
Construction dynamique d’un formulaire . . . . . . . . . . . .
Ajout d’objets sur le formulaire . . . . . . . . . . . . . . . . . . .
Suppression d’objets . . . . . . . . . . . . . . . . . . . . . . . . . .
Conception dynamique d’un état . . . . . . . . . . . . . . . . . .
Conception de compléments Access . . . . . . . . . . . . . .
Mise en place du décor . . . . . . . . . . . . . . . . . . . . . . . .
919
919
920
924
941
942
944
946
947
952
952
954
959
960
962
964
Sommaire
Le générateur de formulaires . . . . . . . . . . . . . . . . . . . . 973
Installation du complément . . . . . . . . . . . . . . . . . . . . . 985
15.5
15.6
16
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-il possible de faire en sorte que le calendrier renseigne
n’importe quel champ Date automatiquement ? . . . . . . . .
Comment désinstaller un complément Access ? . . . . . . . .
Une base de données peut-elle renfermer plusieurs
compléments ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comment, dans un complément Access, différencier la base
de données en cours de celle du complément ? . . . . . . . .
Que sont les API Windows et comment les utiliser ? . . . . .
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
990
990
991
992
992
993
995
Interconnexion des logiciels Office . . . . . . . . . . . . . . . . 997
16.1
16.2
16.3
16.4
16.5
16.6
Les techniques de base . . . . . . . . . . . . . . . . . . . . . . . 999
Copier/coller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 999
Liaisons Office . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001
Automatisation des liaisons : l’instruction OutputTo . . . . 1001
Les interfaces Access/Word . . . . . . . . . . . . . . . . . . . 1003
Publipostage manuel . . . . . . . . . . . . . . . . . . . . . . . . . 1003
Automatisation du publipostage . . . . . . . . . . . . . . . . . 1009
Les interfaces Access/Excel . . . . . . . . . . . . . . . . . . . 1014
Importation de données Excel . . . . . . . . . . . . . . . . . . . 1015
Exportation de données vers Excel . . . . . . . . . . . . . . . . 1020
Le travail avec les formats texte standard . . . . . . . . . . 1027
Importer/exporter via l’interface utilisateur d’Access . . . . 1027
Exporter/importer en Visual Basic . . . . . . . . . . . . . . . . 1031
Les passerelles personnalisées . . . . . . . . . . . . . . . . . . 1033
Accès au système de fichiers : commandes intégrées . . . . 1034
La bibliothèque Microsoft Scripting Runtime . . . . . . . . . 1039
L’objet FileDialog . . . . . . . . . . . . . . . . . . . . . . . . . . . 1045
Exportation de données personnalisée . . . . . . . . . . . . . 1048
Importation de données personnalisée . . . . . . . . . . . . . 1050
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . 1055
Pourquoi certaines requêtes Access n’apparaissent-elles
pas lors d’un publipostage Word ? . . . . . . . . . . . . . . . . 1055
Pourquoi les champs Date/Heure perdent-ils leur format
lors d’un publipostage Word ? . . . . . . . . . . . . . . . . . . . 1055
Sommaire
Comment transférer les formats d’exportation personnalisés
dans une autre base de données ? . . . . . . . . . . . . . . . .
Excel peut-il accéder à une base de données indépendamment
d’Access ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pourquoi la suppression d’un fichier ou d’un répertoire ne
fonctionne-t-elle pas ? . . . . . . . . . . . . . . . . . . . . . . . .
Peut-on écrire dans un fichier texte sans provoquer
systématiquement un retour à la ligne ? . . . . . . . . . . . .
Access peut-il se connecter à d’autres bases de données ? .
16.7
1056
1056
1059
1059
1060
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1061
Partie E
Access et Internet / Intranet . . . . . . . . . . . . 1063
17
Access et Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1065
17.1
17.2
17.3
17.4
17.5
17.6
Liens hypertexte . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lien hypertexte dans une table . . . . . . . . . . . . . . . . . .
Lien hypertexte sur un formulaire . . . . . . . . . . . . . . . .
Automatisation d’une connexion hypertexte via
FollowHyperlink . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Envoi de documents via SendObject . . . . . . . . . . . . .
Transmission d’un e-mail . . . . . . . . . . . . . . . . . . . . . .
Transmission d’une pièce jointe . . . . . . . . . . . . . . . . . .
Programmation d’un envoi en nombre . . . . . . . . . . . . .
Messagerie électronique avec Outlook . . . . . . . . . . . .
Transmission d’un courrier simple via Outlook . . . . . . . .
Transmission de plusieurs pièces jointes via Outlook . . . .
Liaison de dossiers Outlook à une base Access . . . . . . . .
Présentation des données au travers de pages HTML
statiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Production de pages HTML . . . . . . . . . . . . . . . . . . . .
Modèle d’exportation . . . . . . . . . . . . . . . . . . . . . . . .
Pages d’accès aux données . . . . . . . . . . . . . . . . . . . .
Construction d’une page d’accès aux données . . . . . . . . .
Personnalisation d’une page . . . . . . . . . . . . . . . . . . . .
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comment construire une carte interactive sur un formulaire
Access ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Est-ce que seule l’adresse e-mail du destinataire peut être
renseignée par la méthode FollowHyperlink ? . . . . . . . .
1067
1067
1071
1072
1075
1077
1079
1081
1085
1086
1089
1092
1093
1094
1096
1100
1102
1105
1110
1110
1111
Sommaire
Est-il possible d’expédier des télécopies avec Access ? . . .
Un formulaire ou un état peut-il être rapidement converti
en une page d’accès aux données ? . . . . . . . . . . . . . . . .
Pourquoi une page d’accès aux données ne fonctionne-t-elle
plus après avoir été déplacée ou renommée ? . . . . . . . . .
Un problème similaire survient si la base de données
est déplacée. Comment le résoudre ? . . . . . . . . . . . . . .
17.7
18
1112
1113
1113
1114
En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1116
Active Server Pages (ASP) . . . . . . . . . . . . . . . . . . . . . . 1119
Quelques limitations à prendre en compte . . . . . . . . . . .
Installation d’un serveur web . . . . . . . . . . . . . . . . . .
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Test du serveur . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18.2 Mise en place d’un site avec FrontPage . . . . . . . . . . .
18.3 Introduction aux Active Server Pages . . . . . . . . . . . . .
Qu’est-ce qu’une page HTML ? . . . . . . . . . . . . . . . . . .
Qu’est-ce qu’une page ASP ? . . . . . . . . . . . . . . . . . . .
Première page ASP . . . . . . . . . . . . . . . . . . . . . . . . . .
18.4 Mise en ligne d’une base de données . . . . . . . . . . . . .
Connexion directe ou indirecte à la base de données . . . .
Où l’on reparle des Recordsets . . . . . . . . . . . . . . . . . .
18.5 Construction d’une page pas à pas . . . . . . . . . . . . . . .
Tri des enregistrements . . . . . . . . . . . . . . . . . . . . . . .
Usage de tableaux HTML pour un maquettage attractif . .
Numérotation des lignes . . . . . . . . . . . . . . . . . . . . . . .
Gestion de la pagination . . . . . . . . . . . . . . . . . . . . . .
Listing complet de la page ASP . . . . . . . . . . . . . . . . . .
18.6 Page produit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Le descriptif Bien . . . . . . . . . . . . . . . . . . . . . . . . . . .
Affichage dynamique d’un bien . . . . . . . . . . . . . . . . . .
Connexion du descriptif de bien à la liste des biens . . . . .
Sous-formulaires . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18.7 Élaboration d’un formulaire de recherche . . . . . . . . .
Construction du formulaire de recherche . . . . . . . . . . .
Analyse des données du formulaire . . . . . . . . . . . . . . .
18.8 Écriture d’informations dans la base de données . . . . .
18.9 Publication du site web . . . . . . . . . . . . . . . . . . . . . .
18.10 Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . .
18.1
1121
1122
1122
1124
1126
1128
1129
1135
1137
1140
1140
1145
1149
1149
1150
1154
1155
1163
1165
1165
1168
1170
1170
1175
1176
1182
1185
1187
1188
Sommaire
Lorsque j’ouvre une page ASP, celle-ci n’est pas interprétée.
Pourquoi ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
La mise en forme des tableaux HTML est peu esthétique
lorsqu’une cellule est vide. Comment faire ? . . . . . . . . .
Comment construire un lien hypertexte vers un site web
ou une adresse e-mail ? . . . . . . . . . . . . . . . . . . . . . . .
Comment prévoir une page de zoom sur des photos ? . . .
Est-il possible d’interfacer Access au langage PHP ? . . . .
1188
1189
1189
1190
1191
18.11 En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192
Partie F
MSDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1195
19
Développement client/serveur sous MSDE . . . . . . . . . 1197
19.1
19.2
19.3
19.4
19.5
19.6
19.7
19.8
Pourquoi utiliser MSDE ? . . . . . . . . . . . . . . . . . . . .
Installation de Microsoft SQL Server Desktop Engine .
Installation de MSDE . . . . . . . . . . . . . . . . . . . . . . . .
Démarrage de MSDE . . . . . . . . . . . . . . . . . . . . . . . .
Premiers pas avec MSE . . . . . . . . . . . . . . . . . . . . . .
Le projet Les Comptoirs . . . . . . . . . . . . . . . . . . . . . .
Conversion d’une application Jet en projet MSDE . . . . .
Construction d’un projet Access . . . . . . . . . . . . . . . .
Mise en place des bases frontale et dorsale . . . . . . . . . .
Construction des tables . . . . . . . . . . . . . . . . . . . . . . .
Mise en place des relations . . . . . . . . . . . . . . . . . . . . .
Requêtes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Quelques notions de Transact-SQL . . . . . . . . . . . . . .
Procédures stockées . . . . . . . . . . . . . . . . . . . . . . . . .
Fonctions SQL personnalisées . . . . . . . . . . . . . . . . . . .
Commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Quelques structures de contrôle . . . . . . . . . . . . . . . . .
Formulaires et états . . . . . . . . . . . . . . . . . . . . . . . . .
Mise en œuvre de la propriété Input Parameters dans un
formulaire de recherche . . . . . . . . . . . . . . . . . . . . . . .
Programmation Visual Basic . . . . . . . . . . . . . . . . . . .
Maintenance d’une base MSDE . . . . . . . . . . . . . . . .
Sauvegarde d’une base de données . . . . . . . . . . . . . . . .
Restauration d’une base de données . . . . . . . . . . . . . . .
1199
1200
1200
1202
1203
1204
1206
1211
1211
1212
1217
1221
1235
1236
1239
1241
1241
1244
1247
1248
1251
1253
1253
1254
Sommaire
Suppression d’une base de données . . . . . . . . . . . . . . . 1254
Transfert d’une base de données . . . . . . . . . . . . . . . . . 1254
19.9
Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . .
Il m’est impossible d’ajouter un enregistrement dans une
table MSDE. Pourquoi ? . . . . . . . . . . . . . . . . . . . . . .
Qu’est-ce qu’un déclencheur (trigger) ? . . . . . . . . . . . . .
Comment gérer la colonne Identité (NuméroAuto) lors de
l’insertion de données dans une table ? . . . . . . . . . . . . .
Une liste déroulante n’a pas de propriété Input Parameters.
Comment lui associer une procédure stockée paramétrée ? .
19.10 En bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1255
1255
1255
1256
1257
1259
Partie G
Annexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1261
20
Annexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1263
20.1
20.2
20.3
20.4
20.5
20.6
21
Spécifications techniques d’Access . . . . . . . . . . . . . .
Raccourcis clavier . . . . . . . . . . . . . . . . . . . . . . . . . .
Raccourcis généraux . . . . . . . . . . . . . . . . . . . . . . . . .
Navigation et saisie . . . . . . . . . . . . . . . . . . . . . . . . . .
Options de ligne de commande . . . . . . . . . . . . . . . . .
Méthodes de l’objet DoCmd . . . . . . . . . . . . . . . . . . .
Gestion des objets de la base de données . . . . . . . . . . .
Gestion de l’affichage écran . . . . . . . . . . . . . . . . . . . .
Gestion des menus déroulants et des barres d’outils . . . .
Gestion des enregistrements de formulaires . . . . . . . . . .
Transfert de données (importation, exportation) . . . . . . .
Commande d’exécution . . . . . . . . . . . . . . . . . . . . . . .
Commandes diverses . . . . . . . . . . . . . . . . . . . . . . . . .
Contenu et utilisation du CD-Rom . . . . . . . . . . . . . .
Webographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1265
1267
1267
1268
1269
1270
1270
1272
1274
1274
1276
1277
1278
1278
1280
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1283