Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Importer .txt sur feuille Excel

thunder23

XLDnaute Occasionnel
Bonjour le forum,

Je souhaite importer les données d'un fichier en format texte sur une feuille Excel mais par VBA et avec la même mise en forme que dans le fichier .txt .
Un exemple est disponible en pièce jointe

Merci pour commentaires
 

Pièces jointes

  • testimport.xlsx
    433.3 KB · Affichages: 34

thunder23

XLDnaute Occasionnel
Re Staple1600,

J'ai trouvé ce code où tu avais commenté sauf qu'elle supprime les 5 dernières lignes, est-ce tu serais comment annuler cette manip?

Voici le sujet en question
HTML:
https://www.excel-downloads.com/threads/importer-une-partie-dun-fichier-txt.162911/
 

Staple1600

XLDnaute Barbatruc
Re

Cette macro est un peu élaguée et plus simple à modifier.
(toujours adaptée du code produit par l'enregistreur de macros)
VB:
Sub Macro1_Bis()
Dim typeCol, Chemin$
Application.ScreenUpdating = False
Chemin = "C:\Users\STAPLE\Documents\bdd.txt"
typeCol = Array(4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
    With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & Chemin, Destination:=Cells(1))
        .Name = "bdd"
        .FieldNames = True
        .PreserveFormatting = True
        .RefreshStyle = xlInsertDeleteCells
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePlatform = 850
        .TextFileStartRow = 1
        .TextFileParseType = xlDelimited
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileTabDelimiter = True
        .TextFileColumnDataTypes = typeCol
        .TextFileDecimalSeparator = "."
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
End Sub
PS: J'ai donc supprimé le précédent message.
 

thunder23

XLDnaute Occasionnel
Je viens de le tester et ça fonctionne par contre j'ai remarqué que ça créer une plage dans le gestionnaire de nom, est-ce qu'il y a un moyen que ça ne créer pas de plage à chaque action de la macro?
 

Staple1600

XLDnaute Barbatruc
Re

L’intérêt de cet méthode c'est tu peux actualiser la requête.
En quoi la présence d'une plage nommée te gêne?
Tu peux toujours mettre en commentaire cette ligne
'.Name = "bdd"
Mais cela ne changera pas grand chose
 

thunder23

XLDnaute Occasionnel
Re

L’intérêt de cet méthode c'est tu peux actualiser la requête.
En quoi la présence d'une plage nommée te gêne?
Tu peux toujours mettre en commentaire cette ligne
'.Name = "bdd"
Mais cela ne changera pas grand chose

Re,

Oui je sais mais je ne serais sans doute pas le seul à avoir ce fichier, c'est que je voudrais qu'il soit le plus simple possible
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…