Erreur '4160' Nom de Fichier Incorrect

RV37

XLDnaute Junior
Bonjour le Forum,

Je vais essayer de vous expliquer mon problème le plus clairement possible.

J'ai créé un fichier excel dans lequel je gère des commandes. A partir de ce fichier j'exécute des tris dans un fichier temp (excel) puis j'ouvre depuis excel un fichier WORD "liste" puis un fichier "étiquette" toujours sous word et j'effectue sous word un publipostage.

Nous sommes plusieurs à utiliser ce programme. Losque j'exécute ces fichiers sous ma cession, pas de problème. Deux autres collaboratrices utilisant le même fichier sous leur cession, se retrouve systématiquement avant le publipostage avec l'erreur '4160'.

J'ai vérifié les chemins d'accès, ils sont identiques. Nous utilisons les mêmes macros.

Qu'est-ce qui pourrait faire que cette erreur n'apparaissent que sur certaines cessions ??

Dans l'attente de vous lire si mon brin d'explications est compréhensible.

Bonne journée au fil.

RV37
 

Thomasson

XLDnaute Nouveau
Re : Erreur '4160' Nom de Fichier Incorrect

Bonjour RV 37,

Lorsque tu generes tes deux fichiers word, tu les generes en local ou sur le serveur entreprise ?
Sur ta session, le fichier excel que tu utilise provient il de ton disque OS ou du reseau ?

Je penses que c'est peut etre une histoire de path, mais ca reste a valider...
 

RV37

XLDnaute Junior
Re : Erreur '4160' Nom de Fichier Incorrect

Bonjour Thomasson, le fil,

Les fichiers sont ouverts via le réseau de l'entreprise. Aussi bien les fichiers excel que word.

Rien à partir des disques durs utilisateurs.

Bonne journée,
 

Thomasson

XLDnaute Nouveau
Re : Erreur '4160' Nom de Fichier Incorrect

Bonjour rv,

Je suis quasi sur que c'est bien une histoire de path.
Peux tu mettre lancer la macro sur le pc de tes collaboratrices, des que ca bug lancer le debogage et faire un sreenshot de la ligne en jaune et des lignes autour (notamment celles qui contiennent les paths absolus d'ou se trouve le(s) fichier(s) )

Cdlt,
Thomasson
 

RV37

XLDnaute Junior
Re : Erreur '4160' Nom de Fichier Incorrect

Bonjour Thomasson, le fil,

Merci de te pencher sur mon problème.

Je te joins l'impression écran du problème, tu pourras voir la macro dasn son intégralité.

Bonne journée,

RV37
 

Pièces jointes

  • Doc1.doc
    74 KB · Affichages: 75
  • Doc1.doc
    74 KB · Affichages: 77
  • Doc1.doc
    74 KB · Affichages: 81

Thomasson

XLDnaute Nouveau
Re : Erreur '4160' Nom de Fichier Incorrect

Re RV,

Je crois que j'ai compris
Deux choses :
- tu ouvres tes fichiers word dans le path indiqué. Bien, mais ton fichier excel duquel tu appelles ces fichiers word se trouve t-il lui aussi dans ce path ?
- peux tu me faire un copier-coller du path complet que je puisse voir la fin de la ligne ?

Cdlt
 

RV37

XLDnaute Junior
Re : Erreur '4160' Nom de Fichier Incorrect

Re Thomasson,

Voici la macro en entier :

Sub OuvrirWordDoc()
'References: cocher Microsoft Word 9.0 Object Library ' ou 10.0 ou autre
'selon ta version de Word

Dim wdAPP As Word.Application, wdDoc As Word.Document

On Error Resume Next
Set wdAPP = GetObject(, "Word.Application")
If Err.Number <> 0 Then
Set wdAPP = CreateObject("Word.Application")
End If
On Error GoTo 0

Set wdDoc = wdAPP.Documents.Open("R:\01 EXPLOITS\DR CENTRE\09 COMMUN\1 AGENCE BOURGES\MENU\MENUS ADULTES\TempHD\ImpHD\Liste.doc")

wdAPP.Visible = True

Set wdDoc = wdAPP.Documents.Open("R:\01 EXPLOITS\DR CENTRE\09 COMMUN\1 AGENCE BOURGES\MENU\MENUS ADULTES\TempHD\ImpHD\Etiquette.doc")
With wdAPP.Documents("Etiquette").MailMerge
'With ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.MailAsAttachment = False
.MailAddressFieldName = ""
.MailSubject = ""
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=True
End With
'End With
wdAPP.Visible = False

wdAPP.Documents("Etiquette").Close
wdAPP.Documents("Liste").Close
wdAPP.Visible = True

End Sub


Le fichier Excel n'est plus ouvert à ce stade, j'ai une liaison avec un fichier "liste" de word qui sert de base pour le fichier "Etiquette" avant publipostage.

Suis je clair ??

RV
 

Thomasson

XLDnaute Nouveau
Re : Erreur '4160' Nom de Fichier Incorrect

Re,

dsl de te reposer une question, mais en fait j'ai besoin de savoir comment tu appelle ton code vba ?
Si tu l'appelle depuis le fichier excel d'origine ou d'une autre facon ?

Si c'est depuis le fichier d'excel d'origine, ce fichier se trouvet'il lui aussi au path : "R:\01 EXPLOITS\DR CENTRE\09 COMMUN\1 AGENCE BOURGES\MENU\MENUS ADULTES\TempHD\ImpHD\" ?

Si c'est le cas, j'ai une solution pour toi..
 

RV37

XLDnaute Junior
Re : Erreur '4160' Nom de Fichier Incorrect

Re,

Pas de souci pour te répondre.

Le fichier excel d'où ja lance la macro est dans :
R:\01 EXPLOITS\DR CENTRE\09 COMMUN\1 AGENCE BOURGES\MENU\MENUS ADULTES\"

Le fichier temporaire excel qui sert à la fusion avec Word est dans :
R:\01 EXPLOITS\DR CENTRE\09 COMMUN\1 AGENCE BOURGES\MENU\MENUS ADULTES\TempHD\"

Les 2 fichiers Word qui servent, 1 à la liaison avec Temp (excel) et 1 au publipostage se trouvent dans :
R:\01 EXPLOITS\DR CENTRE\09 COMMUN\1 AGENCE BOURGES\MENU\MENUS ADULTES\TempHD\ImpHD\"

Si cela peut t'éclairer ??

Merci
 

Thomasson

XLDnaute Nouveau
Re : Erreur '4160' Nom de Fichier Incorrect

Re,

Ce que tu peux essayer : Creer un nouveau dossier ou tu regroupe tous les fichiers dont tu as besoin : le fichier excel, le temp excel et les deux doc.

Ensuite, ce que je te propose, c'est d'essayer de remplacer ton path, qui a l'heure actuelle est en absolu, par un path relatif. Je te donne un exemple pour ton code.
Voici ton code d'origine :
Code:
Set wdDoc = wdAPP.Documents.Open("R:\01 EXPLOITS\DR CENTRE\09 COMMUN\1 AGENCE BOURGES\MENU\MENUS ADULTES\TempHD\ImpHD\Liste.doc")

wdAPP.Visible = True

Set wdDoc = wdAPP.Documents.Open("R:\01 EXPLOITS\DR CENTRE\09 COMMUN\1 AGENCE BOURGES\MENU\MENUS ADULTES\TempHD\ImpHD\Etiquette.doc")

Maintenant le nouveau code en relatif, une fois que tu as regroupé tous tes fichiers dans le meme dossier:
Code:
wdApp.Visible = True

Set wdDoc = wdAPP.Documents.Open(CurrentProject.path & "\Liste.doc", , True)
wdDoc.Activate

Set wdDoc = wdAPP.Documents.Open(CurrentProject.path & "\Etiquette.doc", , True)
wdDoc.Activate

Essayes cela, et tiens moi au courant voir si ca marche.
Attention a ne pas oublier d'appliquer cette modif sur tous les paths presents dans ton code !
 

RV37

XLDnaute Junior
Re : Erreur '4160' Nom de Fichier Incorrect

Re Thomasson, le fil,

Le fichier de départ (excel), je ne peux pas le regrouper car il est utilisé sous plusieurs copies.

Je teste ta solution en gardant mon premier fichier tel su'il est et je te tiens au courant Lundi.

Bon week à tous,

RV37
 

Discussions similaires

Statistiques des forums

Discussions
314 450
Messages
2 109 731
Membres
110 553
dernier inscrit
loic55