J'ai pour tâche de créer une feuille Excel simple prenant un nombre non spécifié de lignes dans la colonne A, comme suit:
1234
123461
123151
11321
Et faites-les dans une liste séparée par des virgules dans une autre cellule que l'utilisateur peut facilement copier et coller dans un autre programme comme ceci:
1234,123461,123151,11321
Quelle est la manière la plus simple de faire ça?
microsoft-excel
Muncherelli
la source
la source
Réponses:
En supposant que vos données commencent en A1, je mettrais ce qui suit dans la colonne B:
B1:
B2:
Vous pouvez ensuite coller la colonne B2 dans toute la colonne. La dernière cellule de la colonne B devrait maintenant être une liste de la colonne A séparée par des virgules.
la source
,
), appuyez sur Ctrl- H(Rechercher & remplacer).^p
,
la source
Si vous avez Office 365 Excel, vous pouvez utiliser TEXTJOIN ():
la source
En fait, je viens de créer un module dans VBA qui effectue tout le travail. Il prend ma liste à distance et crée une chaîne délimitée par des virgules qui est sortie dans la cellule de mon choix:
Alors, dans ma cellule, je viens de mettre
=csvRange(A:A)
et cela me donne la liste délimitée par des virgules.la source
Une autre approche consisterait à coller la colonne Excel dans cet outil intégré au navigateur:
convert.town/column-to-comma-separated-list
Il convertit une colonne de texte en une liste séparée par des virgules.
Comme l'utilisateur copie et colle de toute façon dans un autre programme, cela peut être tout aussi facile pour lui.
la source
Vous pouvez faire quelque chose comme ça. Si vous ne parlez pas d'une feuille de calcul énorme, cela fonctionnerait "ok" ...
Voici le code de macro VBA:
Veillez à définir le format de la cellule B1 sur "texte", sinon vous obtiendrez un numéro erroné. Je suis sûr que vous pouvez le faire également dans VBA, mais je ne sais pas comment faire pour le moment et je dois retourner au travail. ;)
la source
Utilisez vi ou vim pour simplement placer une virgule à la fin de chaque ligne:
Pour expliquer cette commande:
%
signifie faire l'action (c'est-à-dire, trouver et remplacer) à toutes les ligness
indique une substitution/
sépare les arguments (ie,s/find/replace/options
)$
représente la fin d'une ligne,
est le texte de remplacement dans ce casla source
Vous pouvez utiliser le guide de How-To Geek pour transformer une ligne en une colonne et l'inverser simplement. Exportez ensuite les données au format csv (format supprimé par des virgules) et vous obtenez votre liste en texte brut séparée par des virgules! Vous pouvez copier du bloc-notes et le remettre dans Excel si vous le souhaitez. En outre, si vous souhaitez laisser un espace après la virgule, vous pouvez effectuer une recherche et remplacer la fonctionnalité, en remplaçant "," par ",". J'espère que ça t'as aidé!
la source
muncherelli, ta réponse me plaisait et je la peaufine :). Juste une petite chose, il m'est parfois nécessaire d'extraire des données d'une feuille et de les utiliser pour interroger une base de données. J'ai ajouté un paramètre facultatif "textQualify" qui permet de créer une liste séparée par des virgules utilisable dans une requête.
la source
J'ai amélioré le sous-générateur generatecsv () pour gérer une feuille Excel contenant plusieurs listes avec des lignes vides séparant à la fois les titres de chaque liste et les listes de leurs titres. exemple
et les combine bien sûr en plusieurs rangées, une par liste.
raison, j’ai demandé à un client de m’envoyer plusieurs mots-clés sous forme de liste pour leur site Web en fonction de l’objet, il lui fallait un moyen d’intégrer facilement ces mots-clés dans les pages Web. Ainsi, la routine a été modifiée et les éléments suivants sont apparus. J'ai également remplacé les noms de variables par des noms significatifs:
la source
La réponse de Sux2Lose est ma méthode préférée, mais cela ne fonctionne pas si vous avez plus de quelques milliers de lignes et risque de casser encore moins de lignes si votre ordinateur ne dispose pas de beaucoup de mémoire.
La meilleure pratique dans ce cas est probablement de copier la colonne, de créer un nouveau classeur, d’être passé spécial dans
A1
le nouveau classeur et deTranspose
faire en sorte que la colonne soit maintenant une ligne. Enregistrez ensuite le classeur en tant que.csv
. Votre csv est maintenant à la base une liste séparée par des virgules en texte brut que vous pouvez ouvrir dans un éditeur de texte.Remarque: n'oubliez pas de transposer la colonne dans une ligne avant de l'enregistrer en tant que csv. Sinon, Excel ne saura pas insérer de virgule entre les valeurs.
la source
L'un des moyens les plus simples consiste à utiliser l'application Web zamazin.co pour ces tâches de séparation par des virgules. Il suffit de renseigner les données de la colonne et de cliquer sur le bouton de conversion pour créer une liste séparée par des virgules. Vous pouvez même utiliser d'autres paramètres pour améliorer le résultat souhaité.
http://zamazin.co/comma-separator-tool
la source
Utilisez
=CONCATENATE(A1;",";A2;",";A3;",";A4;",";A5)
sur la cellule que vous souhaitez afficher le résultat.la source