IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Code VBA pour Modifier Chemin dans Importation Enregistrée [AC-2010]


Sujet :

VBA Access

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2016
    Messages : 6
    Points : 6
    Points
    6
    Par défaut Code VBA pour Modifier Chemin dans Importation Enregistrée
    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,

  2. #2
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 670
    Points : 2 489
    Points
    2 489
    Par défaut Code VBA pour Modifier Chemin dans Importation Enregistrée
    une piste: je suggère de mettre un "watch" sur tes lignes, ou bien un break, ou plus simplement un debug.print sur le contenu de toutes tes variables pour voir si elles rendent bien le résultat attendu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/11/2015, 20h42
  2. [XL-2013] Quel code vba pour inserer image dans userform
    Par david.guedes dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 09/06/2015, 09h11
  3. Réponses: 7
    Dernier message: 10/03/2015, 14h00
  4. Réponses: 2
    Dernier message: 31/07/2013, 14h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo