Ouvrir nom répertoire et fichiers à partir d'une cellule

Fermé
PASCALOU - 2 mai 2017 à 11:41
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 - 2 mai 2017 à 17:35
Bonjour,

Je fais une demande par VB et Inbox du nom d'un répertoire que je sauvegarde dans une cellule. jusqu'ici tout va bien. Je ne connais pas ce répertoire mais mon correspondant X ou Y le connait et je sais que les fichiers de ce repertoire ont tous le même format
Mon correspondant indique le nom du répertoire dans la macro avec une commande INBOX que je sauvegarde dans une cellule AA2
Par exemple: le nom du répertoire s'appelle 1189 que je met dans la cellule AA2 de la feuille1.
Maintenant que je connais le nom du répertoire qui est dans ma cellule AA2, je voudrais importer le contenu des fichiers qui sont dans le répertoire 1189 dans sa feuille pour la traiter avec d'autres macros
Je n'arrive pas à trouver.
Quand je nomme le répertoire ca marche comme ci-dessous mais quand j'essaie de remplacer le répertoire \1189\ par AA2 ou $AA2$ ca ne marche pas. Pourquoi ?
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;C:\RUK PRISM\1189\00000001.BLG", Destination:=Range("$A$1"))
.Name = "00000001"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1252
.TextFileStartRow = 3
.TextFileParseType = xlFixedWidth
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 9, 4, 9, 1, 1, 9)
.TextFileFixedColumnWidths = Array(19, 12, 12, 12, 7, 10)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With




1 réponse

f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
2 mai 2017 à 17:35
Bonjour,

au moins pour le repertoire:
'mettre le nom de votre feuille
rep = Worksheets("feuil1").Range("AA2")
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\RUK PRISM\" & rep & "\00000001.BLG", Destination:=Range("$A$1"))


Ensuite, vous voulez importez tous les fichiers et les empiler ou un seul fichier
0