conversion txt en excel

  • Initiateur de la discussion Initiateur de la discussion Eric
  • 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 !

E

Eric

Guest
Bonjour à tous.

Je cherche à convertir un fichier txt en xls avec des séparateurs de colonnes qui sont différents à chaque colonne. Elles sont séparées soit par une tabulation, soit par ; ou ae ou ! ou...

Je vous joins un fichier pour mieux comprendre.

En vous remerciant pour le coup de main.

A+.

Eric.
 

Pièces jointes

Oui, mais lors de l'ouverture sous excel, on nous permet de définir qu'un seul autre séparateur que ceux proposés (tabulation, virgule, point virgule et espace) alors que moi j'en ai plusieurs.
 
arf oui effectivement 🙁 et vu la fonction vba :
OpenText(FileName, Origin, StartRow, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo, TextVisualLayout, DecimalSeparator, ThousandsSeparator, TrailingMinusNumbers, Local)

ben c pas gagner car apprement il ne prévois que 1 caractère séparateur personnalisé et qui dois en + ne faire qu'une lette ( ou chiffre ).

donc après soit il y a un moyen que je connais pas, soit tu fais le découpage toi même mais c un peu le bordel y faut l'admettre.
 
Bonjour

j'avais eu un besoin qui y ressemble et une réponse de .. je ne sais plus qui, Fréd S. ou Chip P.


voilà donc ce que j'ai :

Function SplitEx(S$, ParamArray Delimiters())
Dim Delimiteur, tmp$

tmp = S
On Error Resume Next
Delimiteur = Delimiters(0)
If Err <> 0 Then
Delimiteur = " "
Err.Clear
Else
For i = 0 To UBound(Delimiters)
' tmp = Replace(tmp, Delimiters(i), Delimiteur)
Next i
End If

' tmp = Replace(tmp, " ", " ")

' SplitEx = Split(tmp, Delimiteur)

End Function 'fs


Sub test_split()
Dim arr
S$ = "Vous pouvez, Svp, venir voir. Merci."
S$ = [A1]
arr = SplitEx(S, ",", ".", " ")

For i = LBound(arr) To UBound(arr)
'Range("A" & i + 1).Value = Arr(i)
Cells(2, i + 1).Value = arr(i)
Next
End Sub


cela pourrait être combiné à une méthode "open for input" ?
est-ce pour des fichiers normés à la sauce E~D~I ?


Bye
Jon
 
- 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

Réponses
4
Affichages
200
Réponses
4
Affichages
222
Retour