Ir ao conteúdo
  • Cadastre-se

Gerar linhas automaticamente de acordo com parcelas


Ir à solução Resolvido por minoso,

Posts recomendados

Bom dia,

 

É possível gerar linhas preenchidas automaticamente de acordo com o número de parcelas?
 
Ex: Tenho uma conta a pagar em 6x, lanço na linha 2 que o número de parcelas é 6 e quero que ele gere automaticamente nas linhas 3, 4, 5, 6 e 7 as próximas parcelas com os dados anteriores.
 
 
Desde já agradeço!
Link para o comentário
Compartilhar em outros sites

  • Solução
 

 

Bom dia,

 

É possível gerar linhas preenchidas automaticamente de acordo com o número de parcelas?
 
Ex: Tenho uma conta a pagar em 6x, lanço na linha 2 que o número de parcelas é 6 e quero que ele gere automaticamente nas linhas 3, 4, 5, 6 e 7 as próximas parcelas com os dados anteriores.
 
 
Desde já agradeço!

 

 

@Davi Lopes_596642

 

Por favor, veja se a planilha anexada lhe atende, espero que sim. :)

 

Não sei se é possível fazer o que você precisa através de fórmulas usando a interface do Excel, por isso fiz com macro (vBA). Se não entender as sintaxes e a lógica, retorne que vamos nos falando.

 

Eu fiz algumas pequenas modificações.

  • Exclui as antigas colunas B e C
    • Substitui o conteúdo da antiga coluna D, agora coluna B, por uma fórmula que apresenta o mesmo resultado que a antiga coluna.
  • Criado um botão a direita superior onde lê a parcela da última linha da tabela e a replica, ou seja, você precisa fazer o cadastro da primeira parcela e, então, pressionar o botão.

 

Vamos nos falando. ;)

 

Código vBA utilizado:

Sub estender_parcelas()' Macro para replicar linhas com base em parcelas    Dim parcela, str_total, str_barra, valor, cont_parcela, cont_linha As Integer    Dim observacao, descricao As String    Dim data_parcela        Application.ScreenUpdating = False        Range("D3").Select    Selection.End(xlDown).Select        str_total = Len(ActiveCell.Value)    str_barra = InStr(1, ActiveCell.Value, "/", vbTextCompare)        parcela = Right(ActiveCell.Value, str_total - str_barra)        observacao = ActiveCell.Offset(0, 5).Value    descricao = ActiveCell.Offset(0, -1)    valor = ActiveCell.Offset(0, 1)        For replica = 1 To parcela - 1            ActiveCell.Offset(replica, -3).Value = WorksheetFunction.EDate(ActiveCell.Offset(replica - 1, -3), 1)        ActiveCell.Offset(replica, -1).Value = descricao        ActiveCell.Offset(replica, 5).Value = observacao        ActiveCell.Offset(replica, 1).Value = valor        ActiveCell.Offset(replica, 0).Value = replica + 1 & "/" & parcela        Next replica    FIM:    Application.ScreenUpdating = True    End Sub

teste2.zip

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@minoso

 

Cara, muito obrigado mesmo!!!

 

Funcionou muito bem aqui!!

 

Tive apenas um probleminha quando lanço dia 30 e em fevereiro ele lança 28, ele replica dia 28 mesmo. Mas convivemos com isso.

 

Você me ajudou muito cara!!!!

Valeuuu!!!!

 

Que bom que deu tudo certo @Davi Lopes_596642 , por favor não esqueça de curtir e marcar o tópico como 'resolvido'.

 

Abraço!

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber 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...