Rechercher : dans
Par :

Inserer des mots d'un .txt dans excel

Dernière réponse le 6 jun 2007 à 11:41:08 mirou, le 5 jun 2007 à 11:27:01 
 Signaler ce message aux modérateurs

Bonjour,
je cherche à inserer à partir d'un fichier .txt des mots séparés par des points virgules, je veux insérer chaque mot dans une cellule. merci

par exemple:
"Adell de Ortells";"Isabelle";"VERINS-FRL";"JANCI Sébastien";

je veux inserer Adell de Ortells dans la premiere cellule, Isabelle dans la 2eme....
merci d'avance.

Configuration: Windows XP
Firefox 2.0.0.4

Meilleures réponses pour « inserer des mots d'un .txt dans excel » dans :
Listes déroulantes simples avec Excel VoirDans votre tableau, vous souhaitez insérer un texte ou une valeur choisi dans une liste (déroulante). vous créez votre liste, ligne aprés ligne, sur votre feuille en cours ou sur une autre feuille du classeur en cours. vous la nommez : INSERTION...
[Windows] Obtenir la liste des fichiers d'un dossier VoirLister le contenu d'un dossier Voici une astuce simple qui permet de lister le nom des fichiers contenus dans un répertoire. Vous pourrez obtenir en un clic les titres de vos chansons, de vos photos, etc. dans un fichier...
Insérer une image de fond sous la grille Excel VoirVous souhaitez insérer un logo sous JPEG ou autre, sous votre grille Excel : FORMAT / FEUILLE / ARRIERE PLAN s'ouvre un panneau vous présentant vos images pour sélection.... choisissez, validez. Pour le supprimer : même procédure FORMAT /...

1

irem, le 5 jun 2007 à 11:38:57

Nul besoin d'un code vba pour cela, il suffit d'ouvrir le fichier avec excel puis préciser le séparateur (dans la présente ";"), excel fera le reste

Irem

Répondre à irem

2

Mister Moot, le 5 jun 2007 à 11:41:59

Sinon il te suffit de changer l'extension de ton .txt en .csv et de l'ouvrir avec excel. C'est le format excel qui a comme caractère séparateur le point virgule.

Répondre à Mister Moot

3

mirounet, le 5 jun 2007 à 11:43:48

Merci, mais je ne sais pas comment préciser le séparateur sous excel,

en fait je vous explique le projet:

j'ai un dossier qui contient plusieurs fichiers textes, je veux copier la premiere ligne de chaque fichier, et l'insérer dans une ligne sous excel,


merci encore

Répondre à mirounet

4

irem, le 5 jun 2007 à 11:46:58

Combien de fichiers textes, si tu en as que quelques-uns se sera plus rapide à la main que de débugger une macro, pour préciser le séparateur tu fais

Fichier-> ouvrir
sélectionne "*.*" comme filtre
sélectionne le fichier texte

dans le premier écran d'assistant choisis "texte délimité"

et dans le second "séparateur : ;"

Irem

Répondre à irem

6

mirounet, le 5 jun 2007 à 11:55:29

J'ai 500 fichiers qui sont en format word mtn, c pour ça j'aimerai bien que ça soit automatique:

je veux les tranformer en en format texte ou csv automatiquement,
apres copier le contenu et inserer le contenu de chaque fichier texte dans une ligne sous un fichier excel.

merci encore

Répondre à mirounet

7

irem, le 5 jun 2007 à 12:01:52

Sincèrement je peux effectivement te préparer cela, mais je n'ai pas le temps maintenant je te propose de le faire ce soir si personne ne t'a aidé d'ici là.

Une dernière question avant de faire cela, les fichiers sont au format word ou au format texte?

Irem

Répondre à irem

8

mirounet, le 5 jun 2007 à 12:11:20

Tous les fichiers sont en format word, mais juste pour l'information que c pas moi qui décide que ça soit fait à la main ou non, je suis en stage et on me demande faire ça.

merci encore

Répondre à mirounet

9

irem, le 6 jun 2007 à 08:39:29

Permiere étape convertir tous les fichiers, pour cela créé une macro (sous excel par exemple) et éxécute la :

Private Sub Synchroniser_Click()
Dim str_Pattern As String
str_Pattern = "*.mtn.doc"
str_path = "c:\test\" 'a toi de préciser
With Application.FileSearch
.NewSearch
.LookIn = ThisWorkbook.Path
.SearchSubFolders = False
.Filename = str_Pattern
.MatchTextExactly = True
.FileType = msoFileTypeOfficeFiles
End With
Dim i As Integer
Dim str_Destination, str_Source As String
With Application.FileSearch
Dim myWord As Word.Application
Dim MyWordDoc As Word.Document
Set myWord = New Word.Application
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count
Rem ThisWorkbook.Sheets.Add.Move after:=Worksheets(Worksheets.Count)
myWord.Documents.Open .FoundFiles(i)
Set MyWordDoc = myWord.Documents(1)
MyWordDoc.SaveAs .FoundFiles(i) & ".txt", wdFormatDOSTextLineBreaks
myWord.Documents.Close
Next i
Else
MsgBox "Aucun fichier trouvé."
End If
myWord.Quit
Set myWord = Nothing
End With
End Sub

tous les fichiers seront copiés en format texte en récupérant les sauts de ligne

Irem

Répondre à irem

5

Mister Moot, le 5 jun 2007 à 11:47:36

Tu ouvres tous les fichiers dont tu as besoin en . csv avec excel et après il te suffit de copier les lignes qui t'intéresse pour les mettre dans ta nouvelle feuille excel.

Répondre à Mister Moot

10

 irem, le 6 jun 2007 à 11:41:08

Enfin une fois faite la transfo en texte, reste a exécuter la fusion :

Private Sub fusionner()
Dim str_Pattern, str_Path As String
str_Pattern = "*.mtn.doc.txt"
str_Path = "c:\test\" 'a toi de préciser
Dim int_I, int_J As Integer
int_I = 1
Dim filesys, text, readfile, contents
Dim MyData
Set filesys = CreateObject("Scripting.FileSystemObject")
With Application.FileSearch
.NewSearch
.LookIn = ThisWorkbook.Path
.SearchSubFolders = False
.Filename = str_Pattern
.MatchTextExactly = True
' .FileType = msoFileTypeOfficeFiles
End With
With Application.FileSearch
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count
Set readfile = filesys.OpenTextFile(.FoundFiles(i), 1, False)
contents = readfile.ReadLine
readfile.Close
Set readfile = Nothing
contents = Replace(contents, ";", Chr(9))
contents = Replace(contents, Chr(34), "")
MyData = Split(contents, Chr(9))
For int_J = 0 To UBound(MyData)
ThisWorkbook.Sheets(1).Cells(int_I, int_J + 1).Value = MyData(int_J)
Next int_J
int_I = int_I + 1
Next i
Else
MsgBox "Aucun fichier trouvé."
End If
End With

End Sub


et tout marche chez moi

Irem

Répondre à irem