Pb pour lancer une fonction sur une base distante(access2000) [Résolu]

tryggvi 2 Messages postés lundi 21 avril 2003Date d'inscription 3 août 2008 Dernière intervention - 31 juil. 2008 à 09:29 - Dernière réponse : tryggvi 2 Messages postés lundi 21 avril 2003Date d'inscription 3 août 2008 Dernière intervention
- 3 août 2008 à 20:21
Bonjour à tous,
 
J'ai des soucis pour faire exécuter une fonction ou une macro sur une autre base que la base en cours.
Je suis dans Module1, j'ajoute une nouvelle table dans une autre base
(appelée test.mdb), j'exporte aussi Module1 vers test.mdb. La table et
le module sont bien dans la nouvelle base, mais la fonction bute sur la
ligne:


acApp.DoCmd.RunMacro "exporter4"


avec le message:"erreur d'exécution 2485 Microsoft Access ne peut pas trouver la fonction exporter 4."

J'avais trouvé, sur ce forum il me semble, la solution consistant à remplacer la ligne par:


acApp.run "exporter4"


mais là il me dit que le Module1 n'existe pas... alors qu'il me l'ouvre.

Voici le code:

Dim conn AsNew ADODB.Connection
Dim cnn AsNew ADODB.Command
conn.Open"Provider=Microsoft.jet.OLEDB.4.0.; data source=d:\test.mdb"
cnn.ActiveConnection = conn
cnn.CommandType = adCmdText
'insertion d'une nouvelle table dans la base
cnn.CommandText = "ALTER TABLE SO_T ADD COLUMN aaa String (50);"
Set rs = cnn.Execute
conn.Close
 
'copie du module1
DoCmd.CopyObject"d:\test.mdb", "Module1", acModule, "Module1"
 
Dim acApp AsNew Access.Application
' Démarrer Access
Set acApp = New Access.Application
' Ouvrir la base de données concernée
acApp.OpenCurrentDatabase("d:\test.mdb")
' Exécuter la macro
acApp.DoCmd.RunMacro"exporter4"
' Quitter Access
acApp.Quit
Set acApp = Nothing
 
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
youpiyoyo 539 Messages postés vendredi 6 juin 2003Date d'inscription 14 juillet 2010 Dernière intervention - 1 août 2008 à 14:33
3
Merci
Salut,
tu as essayés en sauvegardant ta bases avant de faire new access.application. si ta fonction est dans un module ce n'est pas runmacro mais acApp.run "exporter4".
Et surtout il faut que ta fonction ou sub soit déclarer en public.
@+
youpi :)

Merci youpiyoyo 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de youpiyoyo
tryggvi 2 Messages postés lundi 21 avril 2003Date d'inscription 3 août 2008 Dernière intervention - 3 août 2008 à 20:21
0
Merci
Ca a fini par marcher, en déclarant "public" toutes les fonctions et en les regroupant toutes dans le module (je n'avais pas mis la totalité du code, la fonction appelait d'autres fonctions, dont certaines étaient sur un formulaire).
Merci beaucoup!
Commenter la réponse de tryggvi

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.