Texto para colunas usando VBA - dicas do Excel

Índice

Travis pergunta:

Estou tentando formatar algum texto em colunas separadas. O texto está em uma coluna da seguinte forma:

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

Quando formatei o teste para excel, fiz esta coluna conforme ilustrado acima. Gostaria de saber uma fórmula para a qual posso fazer os dados aparecerem em uma linha em vez de em várias linhas para a empresa, a fórmula deve resultar se me der o seguinte em uma linha, mas em colunas diferentes:

Tudo no mesmo ROW

UMA B C
Nome da empresa A PO BOX 1 NEWARK NJ 07101

Usei vlookups e hlookups e tabelas dinâmicas, mas não consigo descobrir como obter a data de uma maneira linha por linha.

Consegui fazer com que os nomes das empresas apareçam linha por linha em uma coluna classificando e achei que poderia usar uma combinação de um vlookup com um hlookup para me dar os resultados que estava procurando, mas não sei o fórmula adequada para aninhar na pesquisa de éter. Eu também testei algumas funções DSUM, mas nenhuma está funcionando para mim? Então, por favor, deixe-me saber o que ou como corrigir meu problema.

Acho que isso pode ser facilmente alcançado usando uma macro. Tente 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

Artigos interessantes...