XL 2016 Imports données fichier txt

epeter

XLDnaute Nouveau
Bonsoir je souhaite importer des données de cours de bourse issues d'un fichier txt mais j'ai un problème de format. En effet quand j'ouvre le fichier et que je sélectionne tout (CTR A) et copie tout sur excel, tout se passe très bien et les données attérissent bien en ligne et en colonne sur le fichier excel.
Cependant quand j'exécute la macro suivante, les données sont regroupées dans une colonne mais je n'ai plus la séparation par colonne. je joins 2 screensshot du fichier txt et du fichier obtenu

Sub Lire_Fichier_Texte()

Dim i As Long
Dim sRepertoire As String, sNomFichier As String
Dim iFile As Integer

Dim ddate As String
Dim souv As String
Dim shaut As String
Dim sbas As String
Dim sclot As String
Dim sdevise As String
Dim ws As Worksheet

sRepertoire = "C:\Users\manep\Downloads\"
sNomFichier = "RCOV.txt" '// nom du fichier

Set ws = Sheets("Transfert") '// feuille où écrire les résultats
ws.UsedRange.Clear '// vider le contenu de la feuille

'Ouvrir le 1er fichier
iFile = FreeFile
Open sRepertoire & sNomFichier For Input As #iFile

'Lecture du 1er fichier et écriture dans Excel
i = 1
Do Until EOF(iFile)
Input #iFile, ddate, souv, shaut, sbas, sclot, sdevise
ws.Cells(i, 1) = ddate
ws.Cells(i, 2) = souv
ws.Cells(i, 3) = shaut
ws.Cells(i, 4) = sbas
ws.Cells(i, 5) = sclot
ws.Cells(i, 6) = svol
ws.Cells(i, 7) = sdevise
i = i + 1
Loop

Close #iFile '// Fermer le fichier

End Sub


Je recherche donc une solution qui pourrait être d'envoyer une commande CTR +A sur le fichier txt puis revenir sur le fichier excel et coller le presse papier ou de faire fonctionner la macro ci-dessus au bon format.

merci
 

Pièces jointes

  • 2022-06-06 19_10_11-Window.png
    2022-06-06 19_10_11-Window.png
    19.2 KB · Affichages: 30
  • 2022-06-06 19_09_55-Window.png
    2022-06-06 19_09_55-Window.png
    13.1 KB · Affichages: 29

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Bonsoir epeter, chris, le forum
En effet quand j'ouvre le fichier et que je sélectionne tout (CTR A) et copie tout sur excel, tout se passe très bien et les données attérissent bien en ligne et en colonne sur le fichier excel.
Cependant quand j'exécute la macro suivante, les données sont regroupées dans une colonne
Plutôt que d'utiliser un accès E/S, regarde la méthode opentext plus simple à utiliser, et tu peux utiliser l'enregistreur de macros pour comprendre le paramétrage.
Attention à bien spécifier le format date pour les colonnes de données en date pour ne pas avoir de problème.
https://docs.microsoft.com/fr-fr/office/vba/api/excel.workbooks.opentext

Après, sur de gros volumes de données, il vaudra mieux utiliser PowerQuery comme l'a conseillé Chris.

Cordialement, @+
Bernard
 

Discussions similaires

Réponses
2
Affichages
592
Réponses
0
Affichages
308

Statistiques des forums

Discussions
314 647
Messages
2 111 530
Membres
111 190
dernier inscrit
clmtj