Transporter une db access dans un document word

Soyez le premier à donner votre avis sur cette source.

Vue 7 067 fois - Téléchargée 1 165 fois

Description

(Projet VB6)

Le problème que j'avais était le suivant :
Je devais créer un document Word et ses macros.
Dans mes programmes, j'avais besoin de stocker quelques données dans une DB Access (fichier MDB vide) sans être obligé de déplacer un fichier MDB en plus du fichier Word.
Or, Word ou Excel ne proposent pas de fichiers de ressources pour y stocker des fichiers.
J'ai donc créer cet utilitaire VB6 qui va :
- Relire byte à byte le fichier MDB
- Générer un fichier texte comportant toutes les données
- Ces données sont au format compatible VB6 et VBA = Module.bas

Cet utilitaire fabrique donc un module qu'il est facile d'importer sous Word.
L'appel de la Sub nommée 'RecréeMDB' regénère le fichier MDB original.

PS : Pensez à faire une compression (réorganisation) de votre DB avant de lancer le traitement, cela dégonflera la taille du fichier (les DB Access ont cette mauvaise habitude de gonfler, même après la suppressions des données)

Conclusion :


Ce projet fabrique un module qui fait 2 fois la taille du fichier MDB original.
Il est évident que sous VB6 il vaut mieux avoir recours au fichier de ressources, beaucoup plus facile à manipuler.

Bien sûr, on peut envisager transporter ainsi n'importe quel fichier.
C'est la raison pour laquelle, sous Office, je vous conseille FORTEMENT d'adopter un réglage de sécurité élevé afin que les macros ne soient pas exécutées systématiquement et automatiquement au lancement.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_asimengo
Messages postés
281
Date d'inscription
jeudi 24 mars 2005
Statut
Membre
Dernière intervention
18 mars 2009
-
@jack: Je ne comprends pas encore l'utilité de ce programme, pourrais-tu être plus clair
cs_gamanga
Messages postés
3
Date d'inscription
vendredi 7 avril 2006
Statut
Membre
Dernière intervention
18 mars 2009
-
TRANSPORTER UNE DB ACCESS DANS UN DOCUMENT WORD.

Le titre laisse penser qu'on produit (actualiuse) un document word en y ajoutant des données issues d'une base access.
D'après les explications fournies, Il ne semble pas que ce soit ce que fait ce programme.
cs_Jack
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
61 -
Non, Ce programme VB6 va lire Byte à Byte le fichier MDB d'origine et fabrique un fichier "MODULE" que l'on peut importer sous Word.
Ce module contient une série de tableaux renfermant les Bytes du fichier MDB utilisé comme source.
Ensuite, sous Word, on fait un 'Import' du module.
Au premier lancement des macros, le fichier MDB N'existe pas et en lançant la Sub RecréeDB, on fabrique un fichier MDB original, nécessaire à la suite des macros (qui ne font pas partie du projet exposé ici)

Ceci permet d'avoir sa DB afin de l'utiliser ensuite pour faire ce qu'on veut.
Dans mon cas, les macros Word vont chercher des infos sur des SQL Server et je stocke les données dans ma base Access pour les triturer.

Je ne pouvais pas utiliser RDO (et le CreateDatabase) pour créer la DB puisque les postes où doivent fonctionner ces macros ne sont pas équipés du logiciel Access.

En conclusion, ce projet VB6 permet de stocker sous forme de code n'importe quel fichier, comme une DB Access.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.