Bonjour à tous et à toutes,
Tout d'abord, je contextualise :
Je souhaite pouvoir, depuis un formulaire sous Access sélectionner un fichier à importer (au format xls), grâce à un bouton "parcourir" prévu à cet effet, pour ensuite pouvoir l'importer (avec un autre bouton "importer" pour commencer et rendre les choses plus simples, mais à terme j'essaierai de faire faire le travail par un seul et unique bouton). J'ai également une zone de texte qui m'affichera le nom du fichier sélectionné dans la boîte de dialogue.
Pour ce faire, je me suis énormément aidé de la documentation d'Accèss (https://access.developpez.com/faq/?p...#AffBoitDialog).
Il faut savoir que j'ai pris la décision d'utiliser une API parce que j'ai testé toutes les solutions que j'ai pu trouver avec le FileDialog etc... mais j'ai rencontré des problèmes avec ActiveX et j'ai essayé toutes les solutions que j'ai trouvées, en vain.
Je me suis donc orienté vers cette solution qui me paraissait beaucoup plus simple avec l'API, d'autant plus que tout est très bien fourni dans la FAQ MS-Access, et que les explications sont en commentaire dans le code...
J'ai donc sur mon formulaire un bouton "Parcourir..." (btn_browser), un autre bouton "Importer" (btn_import) et une zone de texte (txt_path).
Le problème que je rencontre, sachant qu'au niveau du code j'ai d'un côté un module avec l'API à l'intérieur, et de l'autre j'ai le code du "click" de mon btn_browser dans lequel j'appelle la fonction OuvrirUnFichier contenue dans l'API (avec un appel semblable à celui qui est donné sur la FAQ, mais avec quelques modifications puisque je n'ai pas les mêmes besoins que ceux donnés dans l'exemple).
Jusque là tout va bien, et quand je clique sur mon bouton "Parcourir...", j'obtiens l'erreur suivante :
"L'expression Sur clic entrée comme paramètre de la propriété de type événement est à l'origine d'une erreur. Un problème est survenu durant la communication entre Microsoft Access et le serveur OLE ou le contrôle ActiveX.
* Le résultat de l'expression n'est pas le nom d'une macro, le nom d'une fonction définie par l'utilisateur ou [Event Procedure].
* Une erreur a peut-être été commise lors de l'évaluation d'une fonction, d'un événement ou d'une macro."
J'ai cherché de l'aide, et en ai notamment trouvé sur ce forum, malheureusement les résolutions de cette erreur chez ceux qui ont eu le même problème ne fonctionnent pas dans mon cas. Je m'en remets donc aux courageux qui sauront régler ce problème !
Merci par avance.
Cordialement,
BorisW
Partager