Logo Hardware.com.br
Douglas Luciano
Douglas Luci... Novo Membro Registrado
6 Mensagens 1 Curtida

[Resolvido] Excel: criar uma sequência de número em range.

#1 Por Douglas Luci... 10/11/2017 - 01:56
Olá,

Eu tenho uma lista de numero de series no qual eu tenho que criar Ranges. Exemplo

Tabela 1----------------|--------------------------------Tabela 2

Numero de Serie-----|-----Range From Sequence-----|-----Range To Sequence---- -|-----Quantidade
325-842-001---------|--------325-842-001-------------|--------------325-842-004-------|----------4
325-842-002---------|-------325-842-011--------------|--------------325-842-015--------|----------5
325-842-003---------|-------325-842-023--------------|--------------325-842-026-------|----------4
325-842-004
325-842-011
325-842-012
325-842-013
325-842-014
325-842-015
325-842-023
325-842-024
325-842-025
325-842-026


Alguem Poderia me Ajudar?

Obrigado

Anexos

Douglas Luciano
Douglas Luci... Novo Membro Registrado
6 Mensagens 1 Curtida
#5 Por Douglas Luci...
14/11/2017 - 10:25
Ola,

Desculpe, foi meu erro.

Eu adicionei mais numeros de series e esqueci de alterar.

Segue nova planilha.

Mas é exatamente como vc explicou. Eu tenho uma sequencia de numeros de serie e quero colocara em duas colunas ( N1 --- N100) .. Isso vai facilitar receber essas unidades no sistema da minha empresa.. ao inves de um por um.

Obrigado

Anexos

osvaldomp
osvaldomp Geek Registrado
753 Mensagens 558 Curtidas
#6 Por osvaldomp
14/11/2017 - 14:37
osvaldomp disse:
Você quer elaborar uma tabela na coluna A a partir dos dados que estão nas colunas B:C ou você quer elaborar uma tabela nas colunas B : D a partir dos dados que estão na coluna A ?


Douglas Luciano disse:
Eu tenho uma sequencia de numeros de serie e quero colocara em duas colunas ( N1 --- N100)


1. você quer elaborar uma tabela nas colunas B : D a partir dos dados que estão na coluna A ~~~> é isto que você quer ?
2. "quero colocara em duas colunas" ~~~> quais colunas? não são 3 colunas, B, C e D ?
3. explique isto ~~~> "( N1 --- N100)"
Osvaldo
Douglas Luciano
Douglas Luci... Novo Membro Registrado
6 Mensagens 1 Curtida
#7 Por Douglas Luci...
15/11/2017 - 09:33
Osvaldo

1. você quer elaborar uma tabela nas colunas B : D a partir dos dados que estão na coluna A ~~~> é isto que você quer ?
R: Apartir da Coluna A, vou criar as colunas B: C e a coluna D vai mostrar quantos numeros de series eu tenho nessa sequencia.
2. "quero colocara em duas colunas" ~~~> quais colunas? não são 3 colunas, B, C e D ?
R: Idem 1
3. explique isto ~~~> "( N1 --- N100)"
R: O sistema aceita colocar em range... Start = N1 End = N100... o sistema identifica que tenho 100 numeros de series e vai salvar.. n1,n2,n2,n4,n5,n6...n100. Eu tenho uma planilha de 7 mil numero de series e fazer essas ordem manualmente vai me levar dias.

Voce entendeu o que eu quero fazer?

Agradeco desde ja a atencao
osvaldomp
osvaldomp Geek Registrado
753 Mensagens 558 Curtidas
#8 Por osvaldomp
15/11/2017 - 15:54
Se você quiser experimentar uma solução via macro, faça conforme segue.

Instale o código abaixo em um módulo comum, assim:
1. copie o código daqui
2. a partir da planilha em que estão os dados tecle 'Alt+F11' para acessar o editor de VBA
3. no menu do editor >> Inserir >> Módulo
4. cole o código na janela em branco que vai se abrir
5. feito! 'Alt+Q' para retornar para a planilha e testar
para rodar o código:
6. tecle 'Alt+F8' >> selecione a macro correspondente >> Executar, ou insira um botão na planilha e vincule-o à macro ou vincule-a a um atalho de teclado (Alt+F8 > Opções).


Sub MontaTabela()
Dim LR As Long, Cx As Variant, i As Long
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
LR = Cells(Rows.Count, 1).End(3).Row
If [B2] <> "" Then Range("B2" & LR) = ""
[F:F] = ""
Range("F3:F" & LR) = "=IF(RIGHT(A3,3)-RIGHT(A2,3)<>1,ROW(),"""&quot"
Range("F3:F" & LR).Value = Range("F3:F" & LR).Value
Range("F1:F" & LR).SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
[B2] = [A2]
Cx = Range("F1:F" & Cells(Rows.Count, 6).End(3).Row).Value
For i = LBound(Cx) To UBound(Cx)
Cells(Rows.Count, 2).End(3)(2) = Cells(Cx(i, 1), 1)
Cells(Rows.Count, 3).End(3)(2) = Cells(Cx(i, 1) - 1, 1)
Next i
Cells(Rows.Count, 3).End(3)(2) = Cells(LR, 1)
Range("D2" & Cells(Rows.Count, 3).End(3).Row).Formula = "=RIGHT(C2,3)-RIGHT(B2,3)+1"
Range("D2" & Cells(Rows.Count, 3).End(3).Row).Value = Range("D2" & Cells(Rows.Count, 3).End(3).Row).Value
[F:F] = ""
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
Osvaldo
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal