Bonjour à tous,

Je cherche le moyen en VBA de modifier le chemin dans plusieurs importations enregistrées.
J'avais trouvé un début de réponse sur le forum mais le code posté ne fonctionne pas.
Même en essayant de l'adapter celui-ci me renvoi une erreur 31597 "Echec de validation de la chaine XML de spécification par rapport au schéma. une erreur s'est produite dans la ligne suivante du document XML : l'élément n'a pas été fermé".

j'effectue les importations par cette méthode et non par Docmd car cela me permet de définir certains critères qui ne sont pas accessibles via Docmd.

voilà le code que j'ai trouvé sur le forum et que je tente d'adapter :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Sub SpecImpChangerFichier(strNomSpecImport As String, strNouvFichier As String)
Const STR_PATHTAG = "<ImportExportSpecification Path = """
Dim strNouvXml As String, strXml As String
Dim p1 As Long, p2 As Long, bOk As Boolean
 
strXml = CurrentProject.ImportExportSpecifications(strNomSpecImport).XML
 
p1 = InStr(1, strXml, STR_PATHTAG, vbTextCompare)
If p1 > 0 Then
   p2 = InStr(p1 + Len(STR_PATHTAG), strXml, """")
   If p2 > 1 Then
      strNouvXml = Left(strXml, p1 + Len(STR_PATHTAG) - 1) & _
                   strNouvFichier & Mid(strXml, p2)
      bOk = True
   End If
End If
 
If bOk Then
   CurrentProject.ImportExportSpecifications(strNomSpecImport).XML = strNouvXml
End If
 
End Sub
 
 
 
Sub tstSpecImpChangerFichier()
SpecImpChangerFichier "IMP1", _
                      "C:\Mes Documents\ . . . \Le Fichier.xls"
End Sub
Merci de votre aide et de vos réponses.
Cdt,