Ir ao conteúdo

duplicar e repetir linha em nova planilha do excel


leonardo Simões

Posts recomendados

Postado

Ola Pessoal.

Tenho uma planilha onde a coluna A, B e C são fixas e as células da coluna D contem uma variável que é atualizada constantemente.

Gostaria de uma formula em que a linha fosse duplicada tantas vezes pelo numero indicado na coluna D da mesma linha em outra planilha.

Sendo que quandoo estoque estiver zerado a linha não é copiada para a planilha 2.

COL. A COL. B COL. C COL. D

cod descrição do produto valor estoque

055 produto a R$ 1,99 3

056 produto b R$ 1,50 5

057 produto c R$ 2,50 0

Gostaria que a linha 1 ( 055 - produto a - R$ 1,99) fosse multiplicada pelo numero do estoque (3 vezes)

cod descrição do produto valor estoque

055 produto a R$ 1,99 3

055 produto a R$ 1,99 3

055 produto a R$ 1,99 3

056 produto b R$ 1,50 5

057 produto c R$ 2,50 0

Uso a versão do Excel 2007.

Para entender melhor segue link com exemplo:

http://www.4shared.com/file/ORIPDUTH/PLANILHA_EXEMPLO_ESTOQUE_PRODU.html

Senha: leonardo

Desde já agradeço a quem puder ajudar.

  • Membro VIP
Postado

Bom dia Leonardo.

O que você quer acho que só da pra fazer com Macro. Como eu ainda estou aprendendo VBA, ainda não posso te ajudar, mas segue abaixo um exemplo de parcelamento que funciona mais ou menos como você quer fazer na tua planilha. Os colegas do fórum podem adaptar o código para o modelo que você quer:

http://info.abril.com.br/forum/viewtopic.php?f=101&t=9813

Abraços

Postado

Caro Patropi.

Em primeiro lugar gostaria de te parabenizar e agradecer pelo tempo que dispunha com todos que aqui, colocam suas dúvidas. Agradecimento em especial por ter respondido a minha dúvida.

Vou dar uma olhada no link que enviou depois posto o resultado.

Obrigado.

Leonardo Simões

Postado

Tente isto:

Abra sua Panilha e aperte ALT + F11

No Ambiente de desenvolvimento VBA clique duas vezes na Plan2 (Plan2)

No objeto WORKSHEET procedimento ACTIVE cole o codigo abaixo:

Private Sub Worksheet_Activate()

Dim P1, P2, P3 As String

Dim LinhasP2, ContaLinhasP1, ContaLinhasP2 As Long

Dim ValorEstoque, i As Integer

P1 = "Plan1"

P2 = "Plan2"

Dim Msg, Style, Title, Response

Msg = "Apagar dados de " & P2 & "?" ' Define a mensagem.

Style = vbYesNoCancel 'vbYesNo + vbCritical + vbDefaultButton2 ' Define os botões.

Title = "Limpar Dados" ' Define o título.

LinhasP2 = Rows.Count

Response = MsgBox(Msg, Style, Title, Help, Ctxt)

If Response = vbCancel Then

Exit Sub

End If

If Response = vbYes Then ' O usuário escolheu Sim.

Rows("2:" & LinhasP2).Select

Selection.ClearContents

Range("A2").Select

ContaLinhasP2 = 2

Else ' O usuário escolheu Não.

With Range("A:A")

Set CelulaVazia = .Find(Empty, LookIn:=xlValues)

If Not CelulaVazia Is Nothing Then

firstAddress = CelulaVazia.Row

End If

End With

ContaLinhasP2 = firstAddress

End If

ContaLinhasP1 = 2

While Sheets(P1).Range("A" & ContaLinhasP1) <> Empty

ValorEstoque = Sheets(P1).Range("D" & ContaLinhasP1)

For i = 1 To ValorEstoque

Sheets(P2).Range("A" & ContaLinhasP2) = Sheets(P1).Range("A" & ContaLinhasP1)

Sheets(P2).Range("B" & ContaLinhasP2) = Sheets(P1).Range("B" & ContaLinhasP1)

Sheets(P2).Range("C" & ContaLinhasP2) = Sheets(P1).Range("C" & ContaLinhasP1)

If i = 1 Then

Sheets(P2).Range("D" & ContaLinhasP2) = Sheets(P1).Range("D" & ContaLinhasP1)

End If

ContaLinhasP2 = ContaLinhasP2 + 1

Next

ContaLinhasP1 = ContaLinhasP1 + 1

Wend

End Sub

Veja se é por aí...

  • Membro VIP
Postado

Boa tarde Leonardo

Com a intenção de ajudar, eu já apliquei o código do Márcio na tua planilha de exemplo.

Quando você clicar na planilha vai aparecer uma MSGBOX perguntando se você quer que apague os dados da planilha, você clique em sim e serão apagados os dados velhos e lançados todos os dados da planilha 1 já atualizados.

http://www.4shared.com/document/_4_9HmHc/PLANILHA_EXEMPLO_ESTOQUE_PRODU.html

Abraços

Postado

Marcio, obrigado pelo empenho.

Eu tentei seguir os passos que descreveu, mas deu erro.

( erro de compilação) e ( erro de sintaxe).

Sera que você pode dar uma olhada na planilha, no link abaixo e ver o que eu fiz de errado?

http://www.4shared.com/file/md-4s7_U/erro_Private_Sub_Worksheet.html

http://www.4shared.com/document/MBUcxxcW/preo_de_venda_cod_descri.html

Senha: leonardo

Obrigado.

Leonardo Simões

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!