Convertir une liste pour l'utiliser dans Excel
Résolu/Fermé
ulysse5001
Messages postés
58
Date d'inscription
samedi 21 décembre 2013
Statut
Membre
Dernière intervention
17 mars 2022
-
26 nov. 2021 à 22:42
DjiDji59430 Messages postés 4138 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 5 novembre 2024 - 29 nov. 2021 à 18:54
DjiDji59430 Messages postés 4138 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 5 novembre 2024 - 29 nov. 2021 à 18:54
A voir également:
- Convertir une liste pour l'utiliser dans Excel
- Liste déroulante excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Excel liste déroulante en cascade - Guide
- Aller à la ligne dans une cellule excel - Guide
- Déplacer une colonne excel - Guide
10 réponses
Raymond PENTIER
Messages postés
58719
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
7 novembre 2024
17 233
27 nov. 2021 à 00:57
27 nov. 2021 à 00:57
Bonsoir Ulysse.
Il ne faut pas prendre à la lettre le verbe "importer" utilisé par brucine !
Une fois que tu as copié ton texte "Papa ;maman ;tatie ;tonton" dans la cellule A1 d'Excel, tu dois faire
DONNÉES/Outils de données/Convertir puis Type délimité et Séparateur Point-virgule ...
Les 4 éléments sont dispatchés entre les cellules A1, B1, C1 et D1.
Il ne faut pas prendre à la lettre le verbe "importer" utilisé par brucine !
Une fois que tu as copié ton texte "Papa ;maman ;tatie ;tonton" dans la cellule A1 d'Excel, tu dois faire
DONNÉES/Outils de données/Convertir puis Type délimité et Séparateur Point-virgule ...
Les 4 éléments sont dispatchés entre les cellules A1, B1, C1 et D1.
yclik
Messages postés
3691
Date d'inscription
vendredi 25 juillet 2014
Statut
Membre
Dernière intervention
2 novembre 2024
1 512
27 nov. 2021 à 21:20
27 nov. 2021 à 21:20
Bonsoir
Classeur à tester
Classeur à tester
brucine
Messages postés
17586
Date d'inscription
lundi 22 février 2021
Statut
Membre
Dernière intervention
7 novembre 2024
2 562
27 nov. 2021 à 21:55
27 nov. 2021 à 21:55
Oui,
Tout moyen est de toute façon capillotracté parce qu'il n'y a pas d'espaces qu'entre les champs souhaités (sans quoi on aurait pu s'en servir comme délimiteurs ou les remplacer automatiquement par des points-virgules, par exemple via un batch) et que les noms de magasins et de localités n'ont pas tous le même nombre de caractères et surtout parce que, concernant les premiers, ils peuvent avoir un nombre d'espaces variables.
Si maintenant il y avait moyen d'écrire à partir de la base de données les magasins sur un mode du style
LE_ COCHON _DINGUE, on serait sauvés et cela deviendrait plus simple.
Tout moyen est de toute façon capillotracté parce qu'il n'y a pas d'espaces qu'entre les champs souhaités (sans quoi on aurait pu s'en servir comme délimiteurs ou les remplacer automatiquement par des points-virgules, par exemple via un batch) et que les noms de magasins et de localités n'ont pas tous le même nombre de caractères et surtout parce que, concernant les premiers, ils peuvent avoir un nombre d'espaces variables.
Si maintenant il y avait moyen d'écrire à partir de la base de données les magasins sur un mode du style
LE_ COCHON _DINGUE, on serait sauvés et cela deviendrait plus simple.
ulysse5001
Messages postés
58
Date d'inscription
samedi 21 décembre 2013
Statut
Membre
Dernière intervention
17 mars 2022
1
29 nov. 2021 à 17:12
29 nov. 2021 à 17:12
Merci yclik. je regarde votre proposition de près.
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
29 nov. 2021 à 11:47
29 nov. 2021 à 11:47
Bonjour,
une approche en vba si "QC" est toujours présent
cette macro lit le fichier texte et scinde chaque ligne.
A mettre dans un module et appelez la macro LireFichierTexteParLigne()
en ayant eut soin d'adapter le chemin du fichier texte:
Voilà
une approche en vba si "QC" est toujours présent
cette macro lit le fichier texte et scinde chaque ligne.
A mettre dans un module et appelez la macro LireFichierTexteParLigne()
en ayant eut soin d'adapter le chemin du fichier texte:
Option Explicit Sub LireFichierTexteParLigne() 'par: https://excel-malin.com Application.ScreenUpdating = False On Error GoTo CodeErreur Dim IndexFichier As Integer Dim MonFichier As String Dim ContenuLigne As String Dim i As Long MonFichier = "C:\Users\LePivert\Documents\essai.txt" '<-- mettez ici le nom du fichier à lire IndexFichier = FreeFile() Open MonFichier For Input As #IndexFichier 'ouvre le fichier i = 1 While Not EOF(IndexFichier) ' Line Input #IndexFichier, ContenuLigne ' lecture du fichier ligne par ligne: la variable "ContenuLigne" contient le contenu de la ligne active Cells(i, 1) = ContenuLigne 'ajoutez ici votre code à appliquer pour chaque ligne scinderligne (i) i = i + 1 Wend ActiveSheet.Range("A1:F1").Columns.AutoFit Close #IndexFichier ' ferme le fichier Application.ScreenUpdating = True Exit Sub CodeErreur: MsgBox "Une erreur s'est produite..." Application.ScreenUpdating = True End Sub Sub scinderligne(ByVal ligne As Integer) Dim num As String Dim ville As String Dim tabu As Integer ville = Split(Cells(ligne, 1), "QC")(0) Cells(ligne, 2) = Split(ville, " ")(0) Cells(ligne, 2) = Cells(ligne, 2) & " " & Split(ville, " ")(1) num = Split(Cells(ligne, 1), "QC")(1) Cells(ligne, 5) = Split(num, " ")(1) & " %" Cells(ligne, 6) = Split(num, " ")(3) Cells(ligne, 3) = Replace(Cells(ligne, 1), Cells(ligne, 2), "") Cells(ligne, 3) = Replace(Cells(ligne, 3), Cells(ligne, 5), "") Cells(ligne, 3) = Replace(Cells(ligne, 3), Cells(ligne, 6), "") Cells(ligne, 3) = Replace(Cells(ligne, 3), "QC", "") tabu = UBound(Split(Cells(ligne, 3))) Cells(ligne, 4) = Split(Cells(ligne, 3), " ")(tabu - 3) Cells(ligne, 3) = Replace(Cells(ligne, 3), Cells(ligne, 4), "") End Sub
Voilà
DjiDji59430
Messages postés
4138
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
5 novembre 2024
678
26 nov. 2021 à 22:53
26 nov. 2021 à 22:53
Bonjour à tous,
Utilise données==>convertir
Crdlmt
Utilise données==>convertir
Crdlmt
ulysse5001
Messages postés
58
Date d'inscription
samedi 21 décembre 2013
Statut
Membre
Dernière intervention
17 mars 2022
1
27 nov. 2021 à 00:15
27 nov. 2021 à 00:15
SVP, comment exécuter Données ===>convertir. j'utilise Office 2016
merci à vous.
merci à vous.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
brucine
Messages postés
17586
Date d'inscription
lundi 22 février 2021
Statut
Membre
Dernière intervention
7 novembre 2024
2 562
26 nov. 2021 à 22:54
26 nov. 2021 à 22:54
Bonsoir,
Aucun logiciel ne sait faire cela si les informations ne sont pas délimitées.
S'il s'agit d'un fichier texte, mettre par exemple un point-virgule entre chaque champ, on pourra ensuite importer le texte ainsi délimité dans Excel.
Aucun logiciel ne sait faire cela si les informations ne sont pas délimitées.
S'il s'agit d'un fichier texte, mettre par exemple un point-virgule entre chaque champ, on pourra ensuite importer le texte ainsi délimité dans Excel.
ulysse5001
Messages postés
58
Date d'inscription
samedi 21 décembre 2013
Statut
Membre
Dernière intervention
17 mars 2022
1
27 nov. 2021 à 00:09
27 nov. 2021 à 00:09
merci Brucine.
Tel que suggéré, j'ai séparé les champs avec des " ; " Copier / Coller mais aucun résultat utilisable.
Dans le menu de Fichier, dans Excel, je vois Exporter mais pas Importer. pourriez-vous me dire comment Importer ?
Tel que suggéré, j'ai séparé les champs avec des " ; " Copier / Coller mais aucun résultat utilisable.
Dans le menu de Fichier, dans Excel, je vois Exporter mais pas Importer. pourriez-vous me dire comment Importer ?
ulysse5001
Messages postés
58
Date d'inscription
samedi 21 décembre 2013
Statut
Membre
Dernière intervention
17 mars 2022
1
27 nov. 2021 à 18:04
27 nov. 2021 à 18:04
Un gros merci! Comme on dit: "Papa, ça marche!"
Il me reste une partie du problème à régler. Est-ce qu'il existe un moyen d'inscrire en bloc les " ; " à chaque point de séparation. Dans une liste de plus de 50 lignes avec 5 points de séparation, c'est beaucoup de manipulation.
Suggestion ?
Ulysse
Il me reste une partie du problème à régler. Est-ce qu'il existe un moyen d'inscrire en bloc les " ; " à chaque point de séparation. Dans une liste de plus de 50 lignes avec 5 points de séparation, c'est beaucoup de manipulation.
Suggestion ?
Ulysse
Raymond PENTIER
Messages postés
58719
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
7 novembre 2024
17 233
27 nov. 2021 à 21:59
27 nov. 2021 à 21:59
Suggestion ? oui : Revoir l'élaboration de la source d'informations !
DjiDji59430
Messages postés
4138
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
5 novembre 2024
678
27 nov. 2021 à 18:17
27 nov. 2021 à 18:17
Bonjour à tous,
Et si tu mettais un exemple réel du contenu de ta cellule ? Tu ne crois pas que ça éviterai de parler dans le vide et que ça permettrait d'apporter la réponse adéquate a ta question.
Crdlmt
Et si tu mettais un exemple réel du contenu de ta cellule ? Tu ne crois pas que ça éviterai de parler dans le vide et que ça permettrait d'apporter la réponse adéquate a ta question.
Crdlmt
ulysse5001
Messages postés
58
Date d'inscription
samedi 21 décembre 2013
Statut
Membre
Dernière intervention
17 mars 2022
1
27 nov. 2021 à 18:57
27 nov. 2021 à 18:57
Bonne idée DjiDji. Voici un exemple simplifié.
20 11 LE COCHON DINGUE LEVIS QC 2,00 % 42$
20 11 MAGASIN CDN TIRE MONTRÉAL QC 1,50 % 75$
20 11 IGA EXTRA QUEBEC QC 3,00 % 15$
Dans cet exemple, je dois séparer la date, le lieu, le % et le montant.
À partir des informations obtenues de chacun des répondeurs, je sais maintenant comment séparer les champs. Toutefois, comme à chaque mois la liste à traiter comprend environ 50 lignes, j'aurais à insérer environ 250 à 300 points-virgules.
Ma nouvelle question consiste à savoir s'Il y a un moyen de procéder aux insertions autrement qu'une à la fois.
Un merci sincère à tous ceux qui prendront le temps de me répondre.
Ulyss
20 11 LE COCHON DINGUE LEVIS QC 2,00 % 42$
20 11 MAGASIN CDN TIRE MONTRÉAL QC 1,50 % 75$
20 11 IGA EXTRA QUEBEC QC 3,00 % 15$
Dans cet exemple, je dois séparer la date, le lieu, le % et le montant.
À partir des informations obtenues de chacun des répondeurs, je sais maintenant comment séparer les champs. Toutefois, comme à chaque mois la liste à traiter comprend environ 50 lignes, j'aurais à insérer environ 250 à 300 points-virgules.
Ma nouvelle question consiste à savoir s'Il y a un moyen de procéder aux insertions autrement qu'une à la fois.
Un merci sincère à tous ceux qui prendront le temps de me répondre.
Ulyss
ulysse5001
Messages postés
58
Date d'inscription
samedi 21 décembre 2013
Statut
Membre
Dernière intervention
17 mars 2022
1
29 nov. 2021 à 17:04
29 nov. 2021 à 17:04
cs_Le Pivert
Je constate que vous êtes "un peu plus" (hum) avancé que moi dans la programmation.
Vous avez consenti pas mal d'efforts pour développer cette solution et je vous en remercie. Toutefois, avant d'être en mesure de l'appliquer, je devrai retourner à mon livre de VBA !!!
En effet, je comprends que la prémisse est à l'effet que QC est toujours présent, ce qui n'est pas le cas (sauf dans l'exemple que j'ai soumis).
Je conserve votre proposition en attendant de pouvoir l'utiliser.
Je constate que vous êtes "un peu plus" (hum) avancé que moi dans la programmation.
Vous avez consenti pas mal d'efforts pour développer cette solution et je vous en remercie. Toutefois, avant d'être en mesure de l'appliquer, je devrai retourner à mon livre de VBA !!!
En effet, je comprends que la prémisse est à l'effet que QC est toujours présent, ce qui n'est pas le cas (sauf dans l'exemple que j'ai soumis).
Je conserve votre proposition en attendant de pouvoir l'utiliser.
DjiDji59430
Messages postés
4138
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
5 novembre 2024
678
29 nov. 2021 à 18:54
29 nov. 2021 à 18:54
Bonjour à tous,
Je joue les rabats-joie, mais ....
Y'a pas de magasin à Val d'or ou à La Tuque ?
Crdlmt
Je joue les rabats-joie, mais ....
Y'a pas de magasin à Val d'or ou à La Tuque ?
Crdlmt
27 nov. 2021 à 18:39
Comme mentionné dans ma demande complémentaire, existe-t-il un moyen d'insérer les ";" autrement qu'un à un? La manipulation que j'ai à exécuter est mensuelle et s'applique pour environ 50 lignes avec 5 insertions chacune.
À nouveau, merci.