Académique Documents
Professionnel Documents
Culture Documents
ACCESS : Crez des formulaires sans tableavec le Data Shaping ADO par Thierry GASPERMENT (arkham46.developpez.com/)
I - Introduction..............................................................................................................................................................3
II - Limitation................................................................................................................................................................ 3
III - Affichage des proprits de la base de donnes dans un formulaire.................................................................. 3
III-A - Cration du formulaire................................................................................................................................. 3
III-B - Cration du jeu d'enregistrements ADO...................................................................................................... 3
III-C - Mise jour des champs source des contrles............................................................................................5
III-D - Affectation du jeu d'enregistrements au formulaire..................................................................................... 5
III-E - Ajout de donnes dans le jeu d'enregistrements........................................................................................ 5
III-F - Erreur sur tris et filtres................................................................................................................................. 6
III-G - Tlchargement........................................................................................................................................... 6
IV - Exemple : un explorateur de fichiers....................................................................................................................6
V - Conclusion............................................................................................................................................................. 7
-2Les sources prsentes sur cette pages sont libre de droits, et vous pouvez les utiliser votre convenance. Par contre cette page de prsentation de
ces sources constitue une oeuvre intellectuelle protge par les droits d'auteurs. Copyright 2008 - Thierry GASPERMENT. Aucune reproduction,
mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de
l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de dommages et intrets. Droits de diffusion permanents
accords developpez LLC.
ACCESS : Crez des formulaires sans tableavec le Data Shaping ADO par Thierry GASPERMENT (arkham46.developpez.com/)
I - Introduction
Nous allons au cours de ce tutoriel crer un formulaire sans table.
Un jeu d'enregistrements ADO sera gnr en VBA puis affect un formulaire.
On peut ainsi, dans un formulaire, afficher des donnes sans ncessairement les stocker dans une table.
Les bases de donnes de ce tutoriel ont t cres avec Access 2003, et enregistres au format Access 2000.
Le Data Shaping utilise MDAC qui devrait normalement tre install sur tout PC avec Office.
Consultez la documentation sur Msdn
II - Limitation
Vous devez possder une version d'Access 2000 ou suprieure.
Les donnes ne sont pas directement modifiables dans un formulaire utilisant cette technique.
Il n'est pas possible de lier un jeu d'enregistrements ADO dans un tat (sauf dans un projet ADP).
Il est important que le jeu d'enregistrements soit dclar en en-tte de module car l'objet doit tre utilisable tant que
le formulaire est ouvert.
Ensuite nous devons le crer au chargement du formulaire.
Le code de cration de ce jeu d'enregistrements est crit dans l'vnement Sur chargement du formulaire.
-3Les sources prsentes sur cette pages sont libre de droits, et vous pouvez les utiliser votre convenance. Par contre cette page de prsentation de
ces sources constitue une oeuvre intellectuelle protge par les droits d'auteurs. Copyright 2008 - Thierry GASPERMENT. Aucune reproduction,
mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de
l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de dommages et intrets. Droits de diffusion permanents
accords developpez LLC.
ACCESS : Crez des formulaires sans tableavec le Data Shaping ADO par Thierry GASPERMENT (arkham46.developpez.com/)
Vous pouvez gnrer la procdure vnementielle en choisissant Form dans la liste droulante droite en haut du
module puis Load dans la liste de droite.
Code de la procdure de chargement du formulaire
Private Sub Form_Load()
End Sub
C'est l'intrieur de cette procdure Form_Load que la cration du jeu d'enregistrements sera programme.
Pour crer ce jeu d'enregistrements, nous avons besoin d'un objet Connection et d'une variable contenant la
commande SHAPE.
Dclarations dans Form_Load
Dim lShapeStr As String ' Commande
Dim oCn As ADODB.Connection ' Objet connection
-4Les sources prsentes sur cette pages sont libre de droits, et vous pouvez les utiliser votre convenance. Par contre cette page de prsentation de
ces sources constitue une oeuvre intellectuelle protge par les droits d'auteurs. Copyright 2008 - Thierry GASPERMENT. Aucune reproduction,
mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de
l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de dommages et intrets. Droits de diffusion permanents
accords developpez LLC.
ACCESS : Crez des formulaires sans tableavec le Data Shaping ADO par Thierry GASPERMENT (arkham46.developpez.com/)
Ensuite on parcourt les proprits de l'objet CurrentDb et on ajoute leur nom et leur valeur au jeu d'enregistrements.
On fait appel aux champs du jeu d'enregistrements comme pour n'importe quel autre type de recordset.
Parcours des proprits de la base de donnes
' Parcours les proprits de la base de donnes
For Each lProp In CurrentDb.Properties
' Nouveau Champ
oRs.AddNew
' Nom de la proprit
oRs!nom = lProp.Name
' Valeur de la proprit si lisible
If lProp.Type <> dbGUID And lProp.Type <> 0 Then
oRs!valeur = CStr(Nz(lProp.Value,"(Null)"))
Else
oRs!valeur = "(inconnu)"
End If
' Met jour le champ
-5Les sources prsentes sur cette pages sont libre de droits, et vous pouvez les utiliser votre convenance. Par contre cette page de prsentation de
ces sources constitue une oeuvre intellectuelle protge par les droits d'auteurs. Copyright 2008 - Thierry GASPERMENT. Aucune reproduction,
mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de
l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de dommages et intrets. Droits de diffusion permanents
accords developpez LLC.
ACCESS : Crez des formulaires sans tableavec le Data Shaping ADO par Thierry GASPERMENT (arkham46.developpez.com/)
Next
Petite remarque : les proprits de type gal dbGuid ou 0 provoquent des erreurs : on teste donc d'abord le type
avant d'affecter la valeur.
Le Nz est utilis en cas de valeur Null.
Ensuite on se dplace au dbut du jeu d'enregistrements, sinon on reste positionn sur le dernier lment ajout,
tout en bas du formulaire.
Dplacement en dbut de jeu d'enregistrements
' Se positionne au premier enregistrement (s'il y a au moins un enregistrement)
If oRs.RecordCount > 0 Then oRs.MoveFirst
III-G - Tlchargement
Tlcharger la base Access de ce tutoriel au format ACCESS 2000 (HTTP)
-6Les sources prsentes sur cette pages sont libre de droits, et vous pouvez les utiliser votre convenance. Par contre cette page de prsentation de
ces sources constitue une oeuvre intellectuelle protge par les droits d'auteurs. Copyright 2008 - Thierry GASPERMENT. Aucune reproduction,
mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de
l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de dommages et intrets. Droits de diffusion permanents
accords developpez LLC.
ACCESS : Crez des formulaires sans tableavec le Data Shaping ADO par Thierry GASPERMENT (arkham46.developpez.com/)
V - Conclusion
Cet article n'est qu'une introduction l'utilisation du Data Shaping dans Access.
Je vous invite lire la documentation sur MSDN pour en dcouvrir plus.
Merci l'quipe Office de developpez.com pour ses relectures, commentaires et encouragements!
Merci Vodiem pour ces remarques techniques.
-7Les sources prsentes sur cette pages sont libre de droits, et vous pouvez les utiliser votre convenance. Par contre cette page de prsentation de
ces sources constitue une oeuvre intellectuelle protge par les droits d'auteurs. Copyright 2008 - Thierry GASPERMENT. Aucune reproduction,
mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de
l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de dommages et intrets. Droits de diffusion permanents
accords developpez LLC.