Pb instruction VBA ouverture Word
Résolu/Fermé
Zebulon97
Messages postés
52
Date d'inscription
mardi 15 septembre 2009
Statut
Membre
Dernière intervention
18 avril 2025
-
12 déc. 2013 à 17:28
Zebulon97 Messages postés 52 Date d'inscription mardi 15 septembre 2009 Statut Membre Dernière intervention 18 avril 2025 - 13 déc. 2013 à 12:08
Zebulon97 Messages postés 52 Date d'inscription mardi 15 septembre 2009 Statut Membre Dernière intervention 18 avril 2025 - 13 déc. 2013 à 12:08
Bonjour,
Je rencontre un problème dans une instruction VBA. Jusqu'à présent en Office 2003 ou 2007, j'ouvrais Word et Excel avec l'instruction suivante :
Call Shell("""winword.exe"" ""\\srv2008\linea\Fichiers ACCESS 2000\Pack Consultation des entreprises\Entreprises non retenues.doc", 1).
Depuis que nous sommes passés en Office 2010 et 2013, cette instruction ne fonctionne plus. Access ne semble pas trouver Word ni Excel.
En passant par la commande exécuter du menu programme winword.exe ouvre bien Word.
J'utilise cette instruction car la base concernée est distribuée sur différents postes avec des OS différents XP, Seven donc des chemins d'accès à Office différents.
Si quelqu'un à une idée, je suis preneur.
Bonne fin d'après midi à tous, cordialement.
Zebulon
Je rencontre un problème dans une instruction VBA. Jusqu'à présent en Office 2003 ou 2007, j'ouvrais Word et Excel avec l'instruction suivante :
Call Shell("""winword.exe"" ""\\srv2008\linea\Fichiers ACCESS 2000\Pack Consultation des entreprises\Entreprises non retenues.doc", 1).
Depuis que nous sommes passés en Office 2010 et 2013, cette instruction ne fonctionne plus. Access ne semble pas trouver Word ni Excel.
En passant par la commande exécuter du menu programme winword.exe ouvre bien Word.
J'utilise cette instruction car la base concernée est distribuée sur différents postes avec des OS différents XP, Seven donc des chemins d'accès à Office différents.
Si quelqu'un à une idée, je suis preneur.
Bonne fin d'après midi à tous, cordialement.
Zebulon
A voir également:
- Pb instruction VBA ouverture Word
- Word 2013 - Télécharger - Traitement de texte
- Espace insécable word - Guide
- Supprimer une page word - Guide
- Tableau word - Guide
- Tabulation word - Guide
4 réponses
Bonsoir,
Voici ce qu'en dit le didacticiel VBA Access (F1), si ça peut t'aider:
Call, instruction, exemple
' Appelle une fonction intrinsèque. La valeur renvoyée par la fonction est abandonnée.
Call Shell(AppName, 1)
' AppName contient le chemin d'accès du fichier exécutable.
Bonne suite
Voici ce qu'en dit le didacticiel VBA Access (F1), si ça peut t'aider:
Call, instruction, exemple
' Appelle une fonction intrinsèque. La valeur renvoyée par la fonction est abandonnée.
Call Shell(AppName, 1)
' AppName contient le chemin d'accès du fichier exécutable.
Bonne suite
Zebulon97
Messages postés
52
Date d'inscription
mardi 15 septembre 2009
Statut
Membre
Dernière intervention
18 avril 2025
13 déc. 2013 à 09:18
13 déc. 2013 à 09:18
Bonjour tessel75,
Merci pour ta réponse.
Je l'ai testé, mais le problème persiste WINWORD.EXE renvoie fichier introuvable.
Si j'indique NOTEPAD.EXE l'exécutable est reconnu.
Je pense que WINWORD.EXE semble poser problème à ACCESS dans Office 2010 et 2013 et n'ouvre pas Word.
Cordialement.
Merci pour ta réponse.
Je l'ai testé, mais le problème persiste WINWORD.EXE renvoie fichier introuvable.
Si j'indique NOTEPAD.EXE l'exécutable est reconnu.
Je pense que WINWORD.EXE semble poser problème à ACCESS dans Office 2010 et 2013 et n'ouvre pas Word.
Cordialement.
Re..
Je pense que tu ne m'as pas compris. Moi je comprends de la remarque du didacticiel Access que la syntaxe est changée; il faudrait essayé en entrant:
Je pense que tu ne m'as pas compris. Moi je comprends de la remarque du didacticiel Access que la syntaxe est changée; il faudrait essayé en entrant:
Call Shell(" \\srv2008\linea\Fichiers ACCESS 2000\Pack Consultation des entreprises\Entreprises non retenues.doc", 1).Ou bien aller regarder dans les profondeurs de Office si MS n'a pas abandonné l'appellation "WinWord"
Zebulon97
Messages postés
52
Date d'inscription
mardi 15 septembre 2009
Statut
Membre
Dernière intervention
18 avril 2025
13 déc. 2013 à 12:08
13 déc. 2013 à 12:08
On m'a fourni la solution.
dans un module existant, ajoutez cette déclaration avant toute autre déclaration de fonction ou de procédure :
________________________________________
Private Declare Function apiShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
________________________________________
Public Sub Open_WordFile(ByVal strPathFilePath)
Dim lngResult As Long
On Error GoTo GestError
lngResult = apiShellExecute(0, "open", strPathFilePath, vbNullChar, vbNullChar, 0)
Fin:
Exit Sub
GestError:
'Gestion d'erreur à définir
GoTo Fin
End Sub
Cela fonctionne.
Merci pour l'attention apportée à mon problème.
dans un module existant, ajoutez cette déclaration avant toute autre déclaration de fonction ou de procédure :
________________________________________
Private Declare Function apiShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
________________________________________
Public Sub Open_WordFile(ByVal strPathFilePath)
Dim lngResult As Long
On Error GoTo GestError
lngResult = apiShellExecute(0, "open", strPathFilePath, vbNullChar, vbNullChar, 0)
Fin:
Exit Sub
GestError:
'Gestion d'erreur à définir
GoTo Fin
End Sub
Cela fonctionne.
Merci pour l'attention apportée à mon problème.