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

Importation d'un fichier de type texte

  • Initiateur de la discussion Initiateur de la discussion tom-b
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

tom-b

Guest
Bonjour,

Je sollicite votre aide car je suis un peu bloqué:
Je récupère des données dans un fichier texte et je voudrais les importer sous excel pour le traiter.
Mon problème vient de la structure du fichier d'origine qui ne me permet pas de l'importer directement et mes connaissance en VBA sont bien trop limitées pour arriver à en tirer quelque chose!
Je vous joint un exemple du fichier et de ce à quoi je voudrais arriver...
J'ai "épuré" un peu le fichier d'origine (entête et donnée superflues, mais la structure de la section des données est intacte)

Merci d'avance pour votre aide!
 

Pièces jointes

Re : Importation d'un fichier de type texte

Bonjour Tom-b

Est ce que tu pourrais donner davantage de précision.
Mais déja sans VB, tu peux ouvrir un fichier de type txt sous le format Excel.
Est ce que tu peux envoyer un extrait de ton fichier txt sans données confidentielles.
merci
 
Re : Importation d'un fichier de type texte

Re...
L'extrait du fichier et ce que je voudrais en faire est déja joint dans mon message précedent.
Pour l'ouverture du fichier directement sous excel, je suis au courant mais la structure de celui ci fait que c'est pas simple...
 
Re : Importation d'un fichier de type texte

Bonjour tom-b, Mouti, re le forum,

Ton fichier excel n'apporte rien.

Il faudrait le fichier texte de départ et ensuite expliciter très exactement ce à quoi tu veux arriver (un peu de prose est quelquefois nécessaire), car, là, j'avoue ne rien comprendre (normal diront certains...😀 )

Bon week-end en attendant.

Jean-Pierre
 
Re : Importation d'un fichier de type texte

Pour moi, il y a bien le fichier texte, bon d'accord l'extension n'est pas txt mais c'est du texte dans le "zip" de mon premier message, y aurait-il un soucis qui fasse qu'il n'est pas visible?

Quand à l'explication de ce que je veux en faire:

Ce fichier comporte des données relatives à différents paramètres (A et B dans mon exemple), celles ci sont diposées en "bloc" avec un "titre" (le nom du paramètre, la fréquence d'échantillonnage et le nombre d'échantillons. Les données sont disposée en lignes de 6 valeurs séparée par une virgule. Mais les valeurs de chaque ligne ne sont que la continuation du "bloc"
Puis à la suite de ça vient un nouveau bloc présentant la même structure...


Quand je l'ouvre avec "notepad" tout se présente sur la même ligne avec des retourchariot ou un charactère du même style pour séparer les lignes...


A partir de ça je voudrais arriver à un des données en colonne (une colonne pour chaque bloc)

Le fichier joint (invisible???) est tres épuré par rapport à celui d'origine (50 blocs de +/- 2000 valeurs + une partie d'entête)

Je joint de nouveau l'exemple de fichier d'origine...
 

Pièces jointes

Re : Importation d'un fichier de type texte

Re,

Je suis vraiment désolé, je ne l'avais pas vu. (Après une réparation de windows, je ne peux plus ouvrir les fichiers en direct. Ils sont décompressés dans un répertoire, en aveugle, je me suis attardé sur le Xls et je n'ai pas vu le fichier texte...)

Tel que présenté, effectivement, seule une procédure en Vba va pouvoir résoudre ton souci, mais, là, ce n'est plus dans mes cordes. Je laisse donc la main à nos amis vbaistes...

Bonne journée tout de même.

Jean-Pierre
 
Re : Importation d'un fichier de type texte

Merci quand même d'avoir tenté...
Je vais attendre et voir si quelqu'un un peu callé en vba se manifeste.
 
Re : Importation d'un fichier de type texte

bonsoir

Peux tu préciser la logique de correspondance entre les données de la colonne B

B
1
2
3


et le deuxième fichier
$A$ $100ms$ $12$$1, 2, 3, 4, 5, 6,7, 8, 9, 10, 11, 12$$B$ $100ms$$3$$10, 11, 12$


Bonne soirée
MichelXld
 
Re : Importation d'un fichier de type texte

Oups 😱 pardon en fait c'est pas une "logique ... c'est supposé être les même, dans le cas du fichier txt que j'ai envoyé la colonne sera:
B
10
11
12

Milles excuses pour la confusion!
 
Re : Importation d'un fichier de type texte

bonjour

Tu peux tester cette procédure

Code:
Dim Valeur As Long
Dim Cible As String, Fichier As String
Dim i As Integer, j As Integer, k As Integer, x As Integer
Dim Tableau() As String, TabVal() As String
 
Fichier = "C:\dossier\txt.1.0122"
 
'Récupère le contenu du fichier
Open Fichier For Input As #1
    Valeur = FileLen(Fichier)
    Cible = Input(Valeur, 1)
Close #1
 
    'Découpe le fichier en fonction des retours vbLf
    Tableau = Split(Cible, vbLf)
 
    'Boucle sur le tableau
    For i = 0 To UBound(Tableau)
        'Recherche les entêtes
        If Tableau(i) Like "$[A-Z]$*" Then
            j = j + 1
            'Ecrit les entetes dans la feuille
            Cells(1, j) = Mid(Tableau(i), 2, 1)
            x = 2
        End If
 
        'Découpe les chaines en fonction du séparateur "virgule" ,
        TabVal = Split(Tableau(i), ",")
 
        'Vérifie si le tableau contient des données numériques
        If IsNumeric(TabVal(0)) Then
            For k = 0 To UBound(TabVal)
                If TabVal(k) <> "" Then
                    'Ecrit les données à la suite de l'entete,
                    'dans la colonne.
                    Cells(x, j) = TabVal(k)
                    x = x + 1
                End If
            Next k
        End If
    Next



Bonne journée
MichelXld
 
Re : Importation d'un fichier de type texte

Bonjour et merci pour cette procédure, j'essaye de l'adapter un peu a mon fichier complet et je la teste...

A bientot pour un retour...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Complétude fichier
Réponses
8
Affichages
811
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…