Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/11/2011, 11h11   #1
Futur Membre du Club
 
Homme
Architecte technique
Inscription : septembre 2011
Messages : 42
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Maroc

Informations professionnelles :
Activité : Architecte technique
Secteur : Bâtiment

Informations forums :
Inscription : septembre 2011
Messages : 42
Points : 18
Points : 18
Par défaut Passage de Access 2007 à Access 2010 - Fonction ne marche plus

Bonjour,

J'ai tenté de passer ma base de données d'Access 2007 à Access 2010. La plupart des fonctionnalités ont migré sans problèmes, sauf celle-ci :

J'ai un bouton qui lance une requête ensuite une autre fonction :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub Commande0_Click()
On Error GoTo Commande0_Click_Err
 
    DoCmd.OpenQuery "Verific_to_0", acViewNormal, acEdit 'cette requête n'a a priori aucun impact sur la fonction suivante
 
    Call import_BCM_Shell 'fonction d'import - voir plus bas
 
 
Commande0_Click_Exit:
    Exit Sub
 
Commande0_Click_Err:
    MsgBox Error$
    Resume Commande0_Click_Exit
 
End Sub
La fonction suivante ouvre une autre base de données (je lance un autoexec à l'intérieur) :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Function import_BCM_Shell()
 
On Error GoTo gest_err
'je lis les chemins de répertoires stockés dans une table liée
 
Set Rs = CurrentDb.OpenRecordset("_Chemins", dbOpenDynaset)
 chem1 = Rs.Fields(2)
 chem2 = Rs.Fields(0)
 
Shell (chem1 & "Msaccess.exe " & chem2 & "\Keynotes.accdb"), vbHide
 
 
gest_err:
 
Resume Next
 
 
End Function
Le problème est le suivant : rien ne se passe sous Access 2010. J'ai l'impression qu'il n'arrive même pas à lancer la fonction shell (puisque sous Access 2007 je vois un splash screen quand ça se lance). Quand je retourne à Access 2007, cela fonctionne à merveille.

Quelqu'un voit-il ce qui ne marche pas ?

Cordialement,

Ore
oreoolep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2011, 18h41   #2
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 475
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 475
Points : 7 564
Points : 7 564
Pas de solution mais des pistes.

1) Vérifie que ton code compile bien en 2010.

2) Essaye d'exécuter en pas à pas la fonction toute seule à partir d'un module par exemple.

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2011, 21h13   #3
Futur Membre du Club
 
Homme
Architecte technique
Inscription : septembre 2011
Messages : 42
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Maroc

Informations professionnelles :
Activité : Architecte technique
Secteur : Bâtiment

Informations forums :
Inscription : septembre 2011
Messages : 42
Points : 18
Points : 18
Par défaut Résolu

Merci beaucoup René.

En fait, j'ai effectivement suivi tes conseils, et je viens enfin de trouver ce qui cloche : c'est le chemin vers Access. C'est C:\Program Files\Microsoft Office\Office14\ au lieu de C:\Program Files\Microsoft Office\Office12\. C'était tout bête ! je n'avais pas fait la mise à jour des chemins dans un autre endroit. Je vais essayer de régler ce souci automatiquement.

Merci encore.

Ore
oreoolep est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h35.


 
 
 
 
Partenaires

Hébergement Web