Texto a columnas usando VBA - Consejos de Excel

Tabla de contenido

Travis pregunta:

Estoy tratando de formatear un texto en columnas separadas. El texto está en una columna de la siguiente manera:

UN
Nombre de la empresa A
PO BOX 1
NEWARK NJ 07101
Nombre de la empresa B
PO BOX 2
1400 SANS SOUCI PARKWAY
WILKES-BARRE PA 18703
Nombre de la empresa C
PO BOX 3
CHICAGO IL 60694
Nombre de la empresa D
PO BOX 4
CLEARFIELD UT 84015
Nombre de la empresa E
PO BOX 5
OGDEN UT 84401
Nombre de la empresa F
PO BOX 6
BALTIMORE MD 21264-4351

Cuando formateé la prueba para sobresalir, hice esta columna como se ilustra arriba. Me gustaría conocer una fórmula en la que pueda hacer que los datos aparezcan en una fila en lugar de en varias filas para la empresa, la fórmula debería resultar si me da lo siguiente en una fila pero en diferentes columnas:

Todo en la misma FILA

UN segundo C
Nombre de la empresa A PO BOX 1 NEWARK NJ 07101

He usado vlookups y hlookups y tablas dinámicas, pero no puedo averiguar cómo obtener la fecha si es una fila por fila.

He podido hacer que los nombres de las empresas aparezcan fila por fila en una columna ordenando y pensé que podría usar una combinación de vlookup con hlookup para darme los resultados que estaba buscando, pero no sé el fórmula adecuada para anidar en la búsqueda de éter. También probé algunas funciones de DSUM, pero ¿ninguna me funciona? Por favor, avíseme qué o cómo solucionar mi problema.

Creo que esto se puede lograr fácilmente usando una macro. Prueba este.

Sub CopyAcross() Dim i As Long Dim NRow As Long Dim LastRow As Long NRow = 2 'First Row TO COPY, change this if you want i = 2 'First Row where the data appears, I assumed it started in A2 LastRow = Range("A65536").End(xlUp).Row While i <= LastRow Range(Cells(i, 1), Cells(i, 1).End(xlDown)).Copy Cells(NRow, 2).PasteSpecial Transpose:=True 'In here, I'm copying to Column 2, Next availabe Row. You can change the 2 if you want. NRow = NRow + 1 i = Cells(i, 1).End(xlDown).End(xlDown).Row Wend End Sub

Articulos interesantes...