Mantengo mi inventario de CD / DVD en un archivo de Excel (Excel 2013). Los datos se organizan como se muestra en la siguiente instantánea.
En cada fila hay una primera celda que menciona la etiqueta del CD y la siguiente celda contiene la lista de aplicaciones separadas por comas que he escrito en ella.
Sin embargo, estoy interesado en una vista en la que los valores separados por comas se transpongan a filas para que solo haya un elemento por celda y por fila como se muestra a continuación.
Entiendo, VBA puede ayudar aquí fácilmente y tengo conocimientos básicos de VBA, sin embargo, ¿hay una posible solución basada en fórmulas para transponer los datos de entrada a salida? Quiero evitar Macros y también quiero evitar el proceso manual de Texto a columna y luego Copiar-Pegar transposición.
También debe recortar el espacio extra si lo hay después de la coma.
Respuestas:
Para hacerlo con una fórmula, con Excel anterior a Office 365 necesitará una columna auxiliar.
Al lado de su lista delimitada por comas (mi lista comienza en C2) ponga:
Esto mantendrá un total acumulado de la cantidad de palabras.
Luego, hace referencia a ambas columnas con INDEX / MATCH para hacer referencia a la celda correcta a medida que la fórmula larga se arrastra hacia abajo.
La fórmula larga es:
Luego dos INDEX / MATCH devuelven las celdas correctas para ser procesadas.
El SUSTITUTO agrega una gran cantidad de espacio en blanco, lo que da un gran objetivo para que el Mid encuentre.
El Mid divide la larga cuerda en el espacio en blanco.
El TRIM elimina el espacio en blanco extraño.
Con Office 365, puede omitir la columna auxiliar y usar TEXTJOIN () si la cadena no es demasiado larga.
Esto reemplaza el ÍNDICE / PARTIDO con TEXTJOIN, de lo contrario, actúa como anteriormente.
fuente
Me gustaría sugerir un método simple de VBA (Macro), que es muy fácil de usar y mejor que cualquier fórmula tediosa.
Cómo funciona:
Ahora haga clic en el botón de comando Hoja:
Aparecerá el primer cuadro de entrada , luego seleccione Lista separada por comas en (B4: B6) y termine con Aceptar.
Aparecerá el segundo cuadro de entrada , seleccione cualquier celda individual como hice E4 y termine con el botón Aceptar.
Encontrará la lista en Filas como se muestra en Captura de pantalla.
NB Ajuste las referencias de celda según sea necesario.
EDITADO:
He editado el cargo desde PeterH tiene me sugieren para quitar el espacio blanco de la salida de la columna E .
Copie y pegue este código y guarde para devolver la hoja.
Tenga en cuenta que agregue este código justo antes del End Sub en el código anterior (verifique el código anterior).
fuente