Aide programme vba

Aide programme vba - VB/VBA/VBS - Programmation

Marsh Posté le 02-10-2012 à 19:02:23    

Bonjour,
 
A l'aide d'une macro, je souhaite pouvoir importer un fichier texte dans Excel. Le nom de ce fichier texte à importer est défini dans la case A1 de la première feuille du fichier Excel. Le fichier texte est sous C:\
 
En recherchant sur internet, j'ai pu construire ce code :  
 
Sub Macro1()
'
'
 Range("A1" ).Select
 
 Dim NomFichier As String
 NomFichier = [A1].Value
 
   
 Dim Emplacement_Fichier As String
Emplacement_Fichier = "C:\NomFichier"
     
     With ActiveSheet.QueryTables.Add(Connection:= _
                    "TEXT;" & Emplacement_Fichier _
                    , Destination:=Range("A1" ))
        .Name = "[A1].Value"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 850
        .TextFileStartRow = 1
        .TextFileParseType = xlDelimited
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = True
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(1, 1, 1)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
End Sub

 
Lors du test de la macro, j'ai une erreur d'execution '1004': Impossible de trouver le fichier texte pour l'actualisation de cette page de données externes., alors que le fichier texte est bien présent sous C.
 
Quel est le problème dans ma macro?
 
Je vous remercie par avance pour votre aide.
 
Bonne soirée
 

Reply

Marsh Posté le 02-10-2012 à 19:02:23   

Reply

Marsh Posté le 03-10-2012 à 09:30:45    

Salut,

Emplacement_Fichier = "C:\" & NomFichier


---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html
Reply

Marsh Posté le 03-10-2012 à 10:16:58    

Salut
 
Merci pour ta réponse.
 
J'ai modifié ma macro mais j'ai toujours le même problème.
 
Quand je lance la macro en Pas à pas détaillé, l'erreur s'affiche sur la dernière ligne de la macro : .Refresh BackgroundQuery:=False
 
Merci

Reply

Marsh Posté le 03-10-2012 à 11:04:41    

Salut,
tu as quoi dans ta cellule A1 et as tu bien modifié comme kiki29 t'as dit de faire ?
 
L'erreur avec une .QueryTable est toujours sur la ligne .Refresh BackgroundQuery:=False puisque c'est à ce moment là que la requête est lancée.


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
Reply

Marsh Posté le 03-10-2012 à 11:13:58    

Salut,
 
Dans la cellule A1, j'ai le nom du fichier texte à récupérer.

Reply

Marsh Posté le 03-10-2012 à 11:21:23    

Sous quelle forme ?
Tu as bien mis l’extension ? (toto.txt)
Tu as bien mis la bonne casse ?
Ton fichier existe bien ?


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
Reply

Marsh Posté le 03-10-2012 à 11:26:07    

Merci,
 
Je n'avais pas mis l'extension. Avec l'extension, ca marche.
 
Par contre, est-que je peux demander à ma macro d'ajouter elle-même l'extension car ce serait plus simple que d'écrire l'extension?
 

Reply

Marsh Posté le 03-10-2012 à 11:28:26    

Code :
  1. Emplacement_Fichier = "C:\NomFichier" & ".txt"


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
Reply

Marsh Posté le 03-10-2012 à 11:35:19    

C'est parfait,
 
Merci beaucoup pour votre aide oovaveoo et kiki29

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed