Tengo la tarea de crear una hoja de Excel simple que tome un número no especificado de filas en la Columna A de esta manera:
1234
123461
123151
11321
Y conviértalos en una lista separada por comas en otra celda que el usuario pueda copiar y pegar fácilmente en otro programa de la siguiente manera:
1234,123461,123151,11321
¿Cuál es la forma más fácil de hacer esto?
microsoft-excel
muncherelli
fuente
fuente
Respuestas:
Suponiendo que sus datos comiencen en A1, pondría lo siguiente en la columna B:
B1:
B2:
Luego puede pegar la columna B2 en toda la columna. La última celda de la columna B ahora debería ser una lista separada por comas de la columna A.
fuente
,
), presione Ctrl- H(Buscar y reemplazar)^p
,
fuente
Si tiene Office 365 Excel, puede usar TEXTJOIN ():
fuente
De hecho, acabo de crear un módulo en VBA que hace todo el trabajo. Toma mi lista a distancia y crea una cadena delimitada por comas que se envía a la celda de mi elección:
Entonces, en mi celda, solo pongo
=csvRange(A:A)
y me da la lista delimitada por comas.fuente
Un enfoque alternativo sería pegar la columna de Excel en esta herramienta en el navegador:
convert.town/column-to-comma-separated-list
Convierte una columna de texto en una lista separada por comas.
Como el usuario está copiando y pegando a otro programa de todos modos, esto puede ser igual de fácil para ellos.
fuente
Podrías hacer algo como esto. Si no está hablando de una gran hoja de cálculo, esto funcionaría 'ok' ...
Aquí está el código de macro VBA:
Asegúrese de establecer el formato de la celda B1 en 'texto' o obtendrá un número desordenado. Estoy seguro de que también puedes hacer esto en VBA, pero no estoy seguro de cómo hacerlo en este momento, y necesito volver a trabajar. ;)
fuente
Use vi o vim para simplemente colocar una coma al final de cada línea:
Para explicar este comando:
%
significa hacer la acción (es decir, buscar y reemplazar) en todas las líneass
indica sustitución/
separa los argumentos (es decir,s/find/replace/options
)$
representa el final de una línea,
es el texto de reemplazo en este casofuente
Puede usar la guía How-To Geek para convertir una fila en una columna y simplemente invertirla. Luego exporte los datos como un csv (formato delimitado por comas), ¡y tendrá su lista separada por comas de texto sin formato! Puede copiar desde el bloc de notas y volver a ponerlo en Excel si lo desea. Además, si desea un espacio después de la coma, puede hacer una función de búsqueda y reemplazo, reemplazando "," con ",". ¡Espero que ayude!
fuente
muncherelli, me gustó tu respuesta, y la modifiqué :). Solo una cosa menor, hay veces que extraigo datos de una hoja y los uso para consultar una base de datos. Agregué un parámetro opcional "textQualify" que ayuda a crear una lista separada por comas utilizable en una consulta.
fuente
Mejoré el subgenerador generatecsv () para manejar una hoja de Excel que contiene múltiples listas con líneas en blanco que separan tanto los títulos de cada lista como las listas de sus títulos. ejemplo
y, por supuesto, los combina en varias filas, 1 por lista.
Por eso, un cliente me envió varias palabras clave en formato de lista para su sitio web en función del tema, necesitaba una forma de introducir estas palabras clave en las páginas web fácilmente. Entonces modifiqué la rutina y se me ocurrió lo siguiente, también cambié los nombres de las variables a nombres significativos:
fuente
La respuesta de Sux2Lose es mi método preferido, pero no funciona si se trata de más de un par de miles de filas, y puede dividirse por menos filas si su computadora no tiene mucha memoria disponible.
La mejor práctica en este caso es probablemente copiar la columna, crear un nuevo libro de trabajo, especial pasado
A1
del nuevo libro de trabajo yTranspose
que la columna sea ahora una fila. Luego guarde el libro como.csv
. Su csv ahora es básicamente una lista separada por comas de texto sin formato que puede abrir en un editor de texto.Nota: Recuerde transponer la columna en una fila antes de guardarla como csv. De lo contrario, Excel no sabrá pegar comas entre los valores.
fuente
Una de las formas más fáciles es usar la aplicación web zamazin.co para este tipo de tareas de separación de comas. Simplemente complete los datos de la columna y presione el botón de conversión para hacer una lista separada por comas. Incluso puede usar otras configuraciones para mejorar la salida deseada.
http://zamazin.co/comma-separator-tool
fuente
Use
=CONCATENATE(A1;",";A2;",";A3;",";A4;",";A5)
en la celda que desea mostrar el resultado.fuente