Posso usar o Microsoft Excel para converter uma tabela “variada” em uma tabela de detalhamento completa?

2

Suponha que eu tenha uma planilha com as seguintes linhas e colunas:

QTY MIN | QTY MAX  | 1 Color | 2 Color | 3 Color | 4 Color
1       | 10       | $1.00   | $1.50   | $1.75   | $1.90
11      | 20       | $0.90   | $1.40   | $1.65   | $1.80
21      | 100      | $0.80   | $1.30   | $1.45   | $1.70
101     | 1000     | $0.70   | $1.20   | $1.35   | $1.60

Existe uma maneira fácil de converter esses dados em uma tabela com uma única coluna para quantidade, representando cada quantidade entre o mínimo e o máximo (1-1000)? Por exemplo, esta é a tabela desejada:

QTY | 1 Color | 2 Color | 3 Color | 4 Color
1   | $1.00   | $1.50   | $1.75   | $1.90
2   | $1.00   | $1.50   | $1.75   | $1.90
3   | $1.00   | $1.50   | $1.75   | $1.90
...

Não sendo um usuário frequente do Excel, não tenho conhecimento de nenhuma função específica baseada no Excel para fazer isso e imagino que exista algo que ajude o processo. Se não, vou voltar a escrever um script autônomo para analisar um CSV e fazer isso, mas queria perguntar primeiro ao SU.

    
por Charlie Schliesser 24.04.2013 / 20:51

2 respostas

1

Eu usaria VLOOKUP .

Você precisará manter uma cópia da tabela de origem na Planilha 1.

A folha 2 conterá sua nova tabela. A coluna A conterá 1-Infinito. A célula B2 conterá =VLOOKUP($A2,Sheet1!A2:G5,2) A célula C2 conterá =VLOOKUP($A2,Sheet1!A2:G5,3) E assim por diante.

Você pode usar a ferramenta de preenchimento para copiar as colunas B-G.

    
por 24.04.2013 / 21:58
1

Não há nada inerente ao Excel para transformar automaticamente os dados, mas há muitos recursos que podem ajudá-lo nisso.

Por exemplo, para inserir várias linhas para o primeiro conjunto de 1-10. Selecione a linha com 11 e escolha Insert no menu pop-up. Você pode pressionar F4 para repetir esta ação.

Para preencher a série de números, selecione o 1 e arraste para baixo para selecionar as próximas 9 células. Então, no menu FillSeries você pode preencher uma série de números.

Em seguida, selecione os valores do dólar e deslize para baixo para selecionar o intervalo de células e use FillDown (ou Ctrl + D )

Você pode repetir esse processo para as outras linhas. Eu provavelmente iria de uma planilha para outra, em vez de inserir linhas, mas a opção está lá.

Se este for um processo único, provavelmente é mais rápido usar o Excel em vez de criar uma solução de script.

    
por 24.04.2013 / 21:06