Modifier une macro sous excel pour l'importation de fichier avec nom variable

Résolu
vbasamuel Messages postés 7 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 9 novembre 2012 - 30 sept. 2008 à 16:21
vbasamuel Messages postés 7 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 9 novembre 2012 - 1 oct. 2008 à 07:23
bonjour,

Je cherche à "automatiser" un import de fichier .xml via excel

le fichier importer sous Excel est uniquement à titre d'édition papier devenu après mise en page interprétable par le commun des mortel :-) (brouillon)

Procédure
sous excel
 OUTIL "enregistrer une macro".
J'effectue la manipulation d'importation et j'obtiens ainsi le code suivant :

Sub Macro1()
'
' Macro1 Macro
'
' Touche de raccourci du clavier: Ctrl+e
'
    ActiveWorkbook.RefreshAll
    ActiveWorkbook.Worksheets.Add
    With ActiveSheet.QueryTables.Add(Connection:= _
        "FINDER;C:\Program Files\Data\Files\Prog\ prog_F0000001.xml " _(doit-être variable comment faire???)
        , Destination: =Range("$A$1"))
        .Name = "prog_F0000001"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlAllTables
        .WebFormatting = xlWebFormattingNone
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
End Sub

L'intérêt de cette macro serait que je puisse modifier le nom de fichier à chaque activation de la macro.
L'idée  : prog_F0000001.xml le faire devenir variable par une simple saisie dans une cellule (saisie que je suis incapable de faire comprendre dans le vb...)
auriez vous une petite info à ce sujet ?

par avance merci

Samuel

2 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
30 sept. 2008 à 18:59
Bonsoir,
--- Plutôt que de conduire l'utilisateur à saisir (avec le risque d'erreur que celà comporte) :
Offre-lui donc de choisir dans une listbox alimentée par la fonction Dir (les exemple ne manquent vraiment pas tant sur ce site que dans ton aode en ligne !)
--- Tu pourras pailleurs juger plus adroit de remplacer :
C:\Program Files\Data\Files\Prog\prog_F0000001.xml"
par :
Environ("ProgramFiles") & "\Data\Files\Prog\prog_F0000001.xml"
3
vbasamuel Messages postés 7 Date d'inscription mardi 30 septembre 2008 Statut Membre Dernière intervention 9 novembre 2012
1 oct. 2008 à 07:23
fonction Dir et environ c'est enregistré.
merci pour les informations pertinentes.
bonne continuation.

Samuel
0
Rejoignez-nous