OVH Cloud OVH Cloud

Ouverture fichier Word

8 réponses
Avatar
Magic
Bonjour,
Je voudrais ouvrir à partir d'une base Access 2000 un fichier Word. Le
problème, c'est que dans la base, le nom de fichier est renseigné sans
l'extension (.doc).
Merci de votre aide

8 réponses

Avatar
Jessy Sempere [MVP]
Bonjour

Il y a plusieurs façons, une piste ici :
http://access.jessy.free.fr/index.html?Menu=9&Page=OpenFileWord
ou alors regardes l'aide sur la fonction shell(...)

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Magic" a écrit dans le message de
news:
Bonjour,
Je voudrais ouvrir à partir d'une base Access 2000 un fichier Word. Le
problème, c'est que dans la base, le nom de fichier est renseigné sans
l'extension (.doc).
Merci de votre aide



Avatar
Magic
J'ai essayé, mais je n'arrive pas à lui définir le chemin qui mène au fichier
J'ai essayé aussi Shell "c:cheminWinWord c:repertoire" & [Champ] (ce qui
fonctionnait sous Access97)
Mais ca ne fonctionne pas.
Merci de votre aide



Bonjour

Il y a plusieurs façons, une piste ici :
http://access.jessy.free.fr/index.html?Menu=9&Page=OpenFileWord
ou alors regardes l'aide sur la fonction shell(...)

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Magic" a écrit dans le message de
news:
Bonjour,
Je voudrais ouvrir à partir d'une base Access 2000 un fichier Word. Le
problème, c'est que dans la base, le nom de fichier est renseigné sans
l'extension (.doc).
Merci de votre aide








Avatar
Eric
Bonjour,

Avec la fonction de Jessy, il suffit que tu concatènes le chemin au nom
du fichier et tu passes ça en argument de sa fonction.

Ex:
le chemin est : C:Documents and SettingsEricMes documents
le fichier : contenu dans le champ Texte0
tu fais :
Dim Chemin as String
Chemin = "C:Documents and SettingsEricMes documents"
OpenFileWord Chemin & Me.Texte0

Avec la fonction Shell :
Shell "C:Program FilesMicrosoft OfficeOfficewinword.exe " & Chr(34)
& Chemin & Me.Texte0 & Chr(34)
Chemin étant défini comme au-dessus


J'ai essayé, mais je n'arrive pas à lui définir le chemin qui mène au fichier
J'ai essayé aussi Shell "c:cheminWinWord c:repertoire" & [Champ] (ce qui
fonctionnait sous Access97)
Mais ca ne fonctionne pas.
Merci de votre aide




Bonjour

Il y a plusieurs façons, une piste ici :
http://access.jessy.free.fr/index.html?Menu=9&Page=OpenFileWord
ou alors regardes l'aide sur la fonction shell(...)

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Magic" a écrit dans le message de
news:

Bonjour,
Je voudrais ouvrir à partir d'une base Access 2000 un fichier Word. Le
problème, c'est que dans la base, le nom de fichier est renseigné sans
l'extension (.doc).
Merci de votre aide








--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr



Avatar
Eric
re,

As-tu référencé dans VBA (accès par ALT+F11), menu Outils|Références la
librairie Microsoft Word x.0 Object Library pour utiliser la fonction
de Jessy ?

Sinon, pour t'affranchir de l'emplacement de Word suivant les
configurations et les versions *si tu fais appel au SHELL*, tu peux
utiliser l'API ShellExecute. Elle permet d'ouvrir les fichiers en
fonction des applicatifs associés par défaut (sans devoir recourrir à la
précision de l'applicatif en question)


A copier dans un module général:

Public Declare Function ShellExecute 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

Const SW_SHOWNORMAL = 1


puis sur le clic d'un bouton d'un formulaire contenant une zone de texte
affichant le chemin complet du fichier et son nom :

Private Sub Commande0_Click()
Dim fichier As String, rep As String
' En supposant que Texte0 contient le chemin et le nom du fichier
rep = Left(Me.Texte0, InStrRev(Me.Texte0, ""))
fichier = Right(Me.Texte0, Len(Texte0) - InStrRev(Me.Texte0, ""))
' ici on force l'extension car non présente dans le nom de fichier
ShellExecute Me.hwnd, vbNullString, fichier & ".doc", _
vbNullString, rep, SW_SHOWNORMAL
End Sub

J'ai essayé, mais je n'arrive pas à lui définir le chemin qui mène au fichier
J'ai essayé aussi Shell "c:cheminWinWord c:repertoire" & [Champ] (ce qui
fonctionnait sous Access97)
Mais ca ne fonctionne pas.
Merci de votre aide





--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Magic
Bonjour,
Lorsque j'utilise la méthode de Jessy, j'ai un message :
Erruer de compilation
Type défini par l'utilisateur non défini
Sur la ligne "Dim WD As Word.Application"
Merci


Bonjour,

Avec la fonction de Jessy, il suffit que tu concatènes le chemin au nom
du fichier et tu passes ça en argument de sa fonction.

Ex:
le chemin est : C:Documents and SettingsEricMes documents
le fichier : contenu dans le champ Texte0
tu fais :
Dim Chemin as String
Chemin = "C:Documents and SettingsEricMes documents"
OpenFileWord Chemin & Me.Texte0

Avec la fonction Shell :
Shell "C:Program FilesMicrosoft OfficeOfficewinword.exe " & Chr(34)
& Chemin & Me.Texte0 & Chr(34)
Chemin étant défini comme au-dessus


J'ai essayé, mais je n'arrive pas à lui définir le chemin qui mène au fichier
J'ai essayé aussi Shell "c:cheminWinWord c:repertoire" & [Champ] (ce qui
fonctionnait sous Access97)
Mais ca ne fonctionne pas.
Merci de votre aide




Bonjour

Il y a plusieurs façons, une piste ici :
http://access.jessy.free.fr/index.html?Menu=9&Page=OpenFileWord
ou alors regardes l'aide sur la fonction shell(...)

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Magic" a écrit dans le message de
news:

Bonjour,
Je voudrais ouvrir à partir d'une base Access 2000 un fichier Word. Le
problème, c'est que dans la base, le nom de fichier est renseigné sans
l'extension (.doc).
Merci de votre aide








--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr






Avatar
Eric
re,

Dans l'autre post je te disais qu'il fallait que tu références la
librairie Microsoft Word x.0 Object Library ou x = 9 ou 10 ou 11

Tu vas dans l'interface VB par ALT+F11, menu Outils|Références et tu la
coches.

Bonjour,
Lorsque j'utilise la méthode de Jessy, j'ai un message :
Erruer de compilation
Type défini par l'utilisateur non défini
Sur la ligne "Dim WD As Word.Application"
Merci



Bonjour,

Avec la fonction de Jessy, il suffit que tu concatènes le chemin au nom
du fichier et tu passes ça en argument de sa fonction.

Ex:
le chemin est : C:Documents and SettingsEricMes documents
le fichier : contenu dans le champ Texte0
tu fais :
Dim Chemin as String
Chemin = "C:Documents and SettingsEricMes documents"
OpenFileWord Chemin & Me.Texte0

Avec la fonction Shell :
Shell "C:Program FilesMicrosoft OfficeOfficewinword.exe " & Chr(34)
& Chemin & Me.Texte0 & Chr(34)
Chemin étant défini comme au-dessus



J'ai essayé, mais je n'arrive pas à lui définir le chemin qui mène au fichier
J'ai essayé aussi Shell "c:cheminWinWord c:repertoire" & [Champ] (ce qui
fonctionnait sous Access97)
Mais ca ne fonctionne pas.
Merci de votre aide





Bonjour

Il y a plusieurs façons, une piste ici :
http://access.jessy.free.fr/index.html?Menu=9&Page=OpenFileWord
ou alors regardes l'aide sur la fonction shell(...)

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Magic" a écrit dans le message de
news:


Bonjour,
Je voudrais ouvrir à partir d'une base Access 2000 un fichier Word. Le
problème, c'est que dans la base, le nom de fichier est renseigné sans
l'extension (.doc).
Merci de votre aide





--


A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr




--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr





Avatar
Magic
Ca fonctionne parfaitement.
Merci infiniment


Bonjour,

Avec la fonction de Jessy, il suffit que tu concatènes le chemin au nom
du fichier et tu passes ça en argument de sa fonction.

Ex:
le chemin est : C:Documents and SettingsEricMes documents
le fichier : contenu dans le champ Texte0
tu fais :
Dim Chemin as String
Chemin = "C:Documents and SettingsEricMes documents"
OpenFileWord Chemin & Me.Texte0

Avec la fonction Shell :
Shell "C:Program FilesMicrosoft OfficeOfficewinword.exe " & Chr(34)
& Chemin & Me.Texte0 & Chr(34)
Chemin étant défini comme au-dessus


J'ai essayé, mais je n'arrive pas à lui définir le chemin qui mène au fichier
J'ai essayé aussi Shell "c:cheminWinWord c:repertoire" & [Champ] (ce qui
fonctionnait sous Access97)
Mais ca ne fonctionne pas.
Merci de votre aide




Bonjour

Il y a plusieurs façons, une piste ici :
http://access.jessy.free.fr/index.html?Menu=9&Page=OpenFileWord
ou alors regardes l'aide sur la fonction shell(...)

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Magic" a écrit dans le message de
news:

Bonjour,
Je voudrais ouvrir à partir d'une base Access 2000 un fichier Word. Le
problème, c'est que dans la base, le nom de fichier est renseigné sans
l'extension (.doc).
Merci de votre aide








--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr






Avatar
Magic
Ca fonctionne également parfaitement. Merci beaucoup pour ces explications
détaillées. Ca aide beaucoup dans la compréhension.


re,

As-tu référencé dans VBA (accès par ALT+F11), menu Outils|Références la
librairie Microsoft Word x.0 Object Library pour utiliser la fonction
de Jessy ?

Sinon, pour t'affranchir de l'emplacement de Word suivant les
configurations et les versions *si tu fais appel au SHELL*, tu peux
utiliser l'API ShellExecute. Elle permet d'ouvrir les fichiers en
fonction des applicatifs associés par défaut (sans devoir recourrir à la
précision de l'applicatif en question)


A copier dans un module général:

Public Declare Function ShellExecute 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

Const SW_SHOWNORMAL = 1


puis sur le clic d'un bouton d'un formulaire contenant une zone de texte
affichant le chemin complet du fichier et son nom :

Private Sub Commande0_Click()
Dim fichier As String, rep As String
' En supposant que Texte0 contient le chemin et le nom du fichier
rep = Left(Me.Texte0, InStrRev(Me.Texte0, ""))
fichier = Right(Me.Texte0, Len(Texte0) - InStrRev(Me.Texte0, ""))
' ici on force l'extension car non présente dans le nom de fichier
ShellExecute Me.hwnd, vbNullString, fichier & ".doc", _
vbNullString, rep, SW_SHOWNORMAL
End Sub

J'ai essayé, mais je n'arrive pas à lui définir le chemin qui mène au fichier
J'ai essayé aussi Shell "c:cheminWinWord c:repertoire" & [Champ] (ce qui
fonctionnait sous Access97)
Mais ca ne fonctionne pas.
Merci de votre aide





--
A+
Eric
http://users.skynet.be/mpfa/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr