Ir ao conteúdo

Excel vba - gerador de parcelas na listview


Ir à solução Resolvido por Basole,

Posts recomendados

Postado

Olá Pessoal, 

 

<> Estou criando um gerador de parcelas através de uma listview. Antes de enviar para a planilha eu quero gerar uma simulação.

Meu problema é que não sei qual o motivo as informações não batem com o cabeçalho. Por exemplo: tenho cabeçalho Juros mas a informação que esta entrando é de data.

Alguém poderia dar uma olhada para mim? Acredito q seja simples mas como ja estou a um tempo na planilha não consigo enxergar o que é.

Outra ajuda é com a data da parcela, eu queria que a pessoa pudesse escolher o dia de vencimento, por mais que a compra seja feita no dia 9, o vencimento pudesse ser todo dia 15 por exemplo.

 

 

image.png.90c8a809320a667e9a226045e8ea7722.png

 

 

 

 

 

Modelo Simulador.zip

Postado
15 horas atrás, Raquel Coelho disse:

Olá Pessoal, 

 

<> Estou criando um gerador de parcelas através de uma listview. Antes de enviar para a planilha eu quero gerar uma simulação.

Meu problema é que não sei qual o motivo as informações não batem com o cabeçalho. Por exemplo: tenho cabeçalho Juros mas a informação que esta entrando é de data.

Alguém poderia dar uma olhada para mim? Acredito q seja simples mas como ja estou a um tempo na planilha não consigo enxergar o que é.

Outra ajuda é com a data da parcela, eu queria que a pessoa pudesse escolher o dia de vencimento, por mais que a compra seja feita no dia 9, o vencimento pudesse ser todo dia 15 por exemplo.

 

 

image.png.90c8a809320a667e9a226045e8ea7722.png

 

 

 

 

 

Modelo Simulador.zip 129 kB · 0 downloads

@Basole Acha que conseguiria me ajudar nessa dúvida?

Postado

@Raquel Coelho infelizmente não consigo pois não tem como testar, o meu Office é 64 bits e o componente Listview não está presente mais nesta versão. 

 

 Mas não é recomendado utilizar o listview, pois muitas pessoas estão usando o office 64 e não vão conseguir utilizar todos recursos da sua planilha. 

 

Se ao invés do listview, puder usar o listbox, posso tentar te ajudar.

 

  • Obrigado 1
  • Solução
Postado

@Raquel Coelho o Listbox não tem todos os recursos do Listview, como o cabeçalho, por exemplo e pra dribrar isso, eu inseri mais um componente Listbox para atender o recurso.

image.png.73a3c532951533db0c44de8e5b5c5554.png

 

Quanto a escolha da data das parcelas atualizei a rotina para selecionar a primeira p/ 30 dias, e as demais de acordo com combobox (período)

   

Veja se é isso !

Modelo Simulador_v1.zip

  • Curtir 1
  • Obrigado 1
Postado

@Raquel Coelho no anexo da minha postagem, aproveitei os cálculos que você fez no seu modelo, 

mas vendo com mais calma, verifiquei que os valores gerados das parcelas e o total, não estão corretos.

Fazendo uma simulação... por exemplo de 1 real com juros de 1% e com 5 parcelas, o valor total será de 6 reais.🙄

 

Então fiz um exemplo usando a função PGTO, nativo do Excel, que calcula o pagamento de um empréstimo de acordo com pagamentos constantes e com uma taxa de juros constante.

https://support.office.com/client/função-pgto-0214da64-9a63-4996-bc20-214433fa6441?NS=EXCEL&Version=16&AppVer=ZXL160

 

Que quiser usar minha sugestão, substitua a linha abaixo no botão Button_SimulaParcelaGP do userform:

' //              * USO DA FUNÇÃO: '=PGTO((juros/100 ->converte %); nParc; VTCompra)* -1 ->(p/convert vl.positivo)
' //              * PMT (em inglês) '
 .List(nParcelas - 1, 4) = VBA.Format(Excel.Application.WorksheetFunction.Pmt _
     ((Me.Comb_JurosParcelaGP.Value / 100), Me.Comb_NParcelasGP.Value, Me.Text_ValorVendaCompraGP.Value * -1), "currency")

 

 

 

 

  • Obrigado 1
  • 3 semanas depois...
Postado

@Basole

 

Olá Basole, tudo bem com você??

Eu vi agora sua mensagem, devido o trabalho essa planilha que estou mexendo ficou de lado. Mas preciso terminar ela, é para uma tia minha.

 

Eu coloquei o código mas deu erro, poderia me ajudar?

 

Queria te fazer uma pergunta, eu consigo carregar informações de uma textbox em outra textbox mas de userforms diferentes?

 

O que acontece, ao invés de digitar o nº de pedido, data, CPF, Cliente e Valor de venda no userform 'Form_GeradorParcela' essas informações ja puxam automaticamente do Userform 'Form_CadVenda'

 

 

image.thumb.png.fe9463f093a69cefcb1ba24f77b6acc3.png

 

 

 

HipollitasREV1.zip

Postado
1 hora atrás, Raquel Coelho disse:

Olá Basole, tudo bem com você??
....Eu coloquei o código mas deu erro, poderia me ajudar?

Queria te fazer uma pergunta, eu consigo carregar informações de uma textbox em outra textbox mas de userforms diferentes?

O que acontece, ao invés de digitar o nº de pedido, data, CPF, Cliente e Valor de venda no userform 'Form_GeradorParcela' essas informações ja puxam automaticamente do Userform 'Form_CadVenda'  

 

Tudo ótimo@Raquel Coelho e você? 

Não sei o que você fez, pois aqui pra mim está rodando 100%. 

Substituiu a referida linho no código? ou talvez esta função "PGTO" não esteja presente na versão do seu Excel. 

De qualquer forma experimente usar a função assim:

 

.List(nParcelas - 1, 4) = VBA.Format(Excel.Application.Pmt _
                      ((Me.Comb_JurosParcelaGP.Value / 100), Me.Comb_NParcelasGP.Value, _
                                    Me.Text_ValorVendaCompraGP.Value * -1), "currency")

 

   Quanto a "carregar" dados de um userform, para o outro, voce precisa referenciar o nome de cada userform em seguida o respectivo componente, por exemplo num botão: 

 

 Userform2.Textobox1.value = Userfom1.Textbox1.value
 Unload me

 

Ou se estiver no userform2, por exemplo, pode usa o "Me": 

 

Me.Textobox1.value = Userfom1.Textbox1.value
 Unload me

  • Obrigado 1
Postado

@Basole

 

Funcionou!!

 

Pode tirar a ultima duvida? Desculpe o incomodo!! Estou tentando fazer um botão excluir mas pelo que entendi esta no final o erro no código, poderia me ajudar?

 

<> Private Sub Button_ExcluirCadC_Click()

Dim excluir As String
excluir = Application.InputBox("Informe o CPF", "Excluir")

If excluir = False Then
MsgBox ("Operação Cancelada")
Exit Sub
End If

 If excluir = vdnullstring Then
MsgBox ("CPF não informado, Por Favor Informar")
Exit Sub
End If

With Worksheets(4).Range("B:B")

Set C = .Find(excluir, LookIn:=xlValues)

If Not C Is Nothing Then

Worksheets(4).Activate
Range(C.Address).Activate

resp = MsgBox("Deseja Excluir Permanentemente o Cadastro do(a) Cliente da Base de Dados?", vbYesNo)
If resp = vbNo Then
Cancel = True
    Exit Sub <>
    End If
     
    linha = Cells.Find(excluir.Value).Row
    Rows(linha).Delete
    
       
    MsgBox ("Cadastro Excluído com Sucesso!")


    Else
    MsgBox ("CPF Não Encontrado")

End If
End With

Postado

e@Raquel Coelho u acrescentei o parâmetro xlWhole na função Find, para procurar o valor exato

 

Dim excluir As String

Worksheets(4).Activate

excluir = Application.InputBox("Informe o CPF", "Excluir")

If excluir = False Then
    MsgBox ("Operação Cancelada")
Exit Sub
End If

 If excluir = vdnullstring Then
    MsgBox ("CPF não informado, Por Favor Informar")
Exit Sub
End If

With Worksheets(4).Range("B:B")

Set C = .Find(excluir, LookIn:=xlValues, lookat:=xlWhole)

If Not C Is Nothing Then

resp = MsgBox("Deseja Excluir Permanentemente o Cadastro do(a) Cliente da Base de Dados?", vbYesNo)
 If resp = vbNo Then
   Cancel = True
 Exit Sub
 End If
    
   
  ActiveSheet.Rows(C.Row).Delete Shift:=xlToUp
       
    MsgBox ("Cadastro Excluído com Sucesso!")


 Else
    MsgBox ("CPF Não Encontrado")

End If
End With

End Sub

 

  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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!