Página 1 de 1

Excel VBA - Conta Parcelada 01/10, 02/10, 03/10...

Enviado: 03 Set 2019 às 13:35
por Leonardo7
Prezados boa tarde,

Tenho um código de cadastro de contas onde o mesmo replica os valores conforme a quantidade de parcelas. O que eu estou precisando é que o código gere o número da parcela (ex.: 1 de 10, 2 de 10...). Fiz esse código .Cells(linha, 13).Value = Me.TextBox_Parcelamento + " de " + Me.TextBox_Parcelamento para ajudar na compreensão.
Código: Selecionar todos
Private Sub Salvar_Click()
    Dim lngParc     As Long
    Dim lngLinhas   As Long
    Dim lngID       As Long
    Dim lngMax      As Long
    
'Consultar a ultima linha com dados
linha = wshBD.Cells(wshBD.Rows.Count, "A").End(xlUp).Offset(1, 0).Row

'Encontra o último código de ID
With wshBD
    For lngLinhas = 2 To linha - 1
        lngID = VBA.Right(.Cells(lngLinhas, 1).Value, _
                            VBA.Len(.Cells(lngLinhas, 1).Value) - VBA.InStr(1, .Cells(lngLinhas, 1).Value, "-"))
        If lngID > lngMax Then lngMax = lngID
    Next lngLinhas
End With

'Carregar os dados para o Banco de Dados
With wshBD
    For lngParc = 1 To CLng(Me.TextBox_Parcelamento.Value)
        .Cells(linha, 1).Value = VBA.Format(Date, "yy") & "-" & _
                                Application.WorksheetFunction.Rept("0", 4 - VBA.Len(lngMax + lngParc)) & _
                                lngMax + lngParc
        .Cells(linha, 2).Value = Me.TextBox_Conta.Value
        .Cells(linha, 3).Value = Me.TextBox_Categoria.Value
        .Cells(linha, 4).Value = Me.ComboBox_TipoDePagamento.Value
        .Cells(linha, 5).Value = Me.ComboBox_Origem.Value
        .Cells(linha, 6).Value = Me.TextBox_Valor.Value
        .Cells(linha, 9).Value = VBA.CDate(Application.WorksheetFunction.EDate(VBA.CDate(Me.TextBox_Data.Value), lngParc - 1))
        .Cells(linha, 11).Value = Me.TextBox_Nota.Value
        .Cells(linha, 13).Value = Me.TextBox_Parcelamento + " de " + Me.TextBox_Parcelamento
         linha = linha + 1
    Next lngParc
End With

'Limpa os dados do formulario apos carregas os mesmos para o banco de dadso


Call Limpar_Click

End Sub

Re: Excel VBA - Conta Parcelada 01/10, 02/10, 03/10...

Enviado: 03 Set 2019 às 14:08
por Jimmy
Olá Leonardo,

Poderia postar a planilha pra gente desenvolver em cima dela?

Jimmy San Juan

Re: Excel VBA - Conta Parcelada 01/10, 02/10, 03/10...

Enviado: 03 Set 2019 às 14:32
por Leonardo7
Jimmy escreveu:Olá Leonardo,

Poderia postar a planilha pra gente desenvolver em cima dela?

Jimmy San Juan

Olá Jimmy,

Segue planilha. Desde já obrigado!

Re: Excel VBA - Conta Parcelada 01/10, 02/10, 03/10...

Enviado: 03 Set 2019 às 17:05
por Jimmy
Olá Leonardo,

Altere essa linha que você fez:
Código: Selecionar todos
.Cells(linha, 13).Value = Me.TextBox_Parcelamento + " de " + Me.TextBox_Parcelamento
para
Código: Selecionar todos
.Cells(linha, 13).Value = lngParc & " de " & Me.TextBox_Parcelamento.Value
e dê retorno.

Nas mensagens acima que você julgar que ajudaram de alguma forma com a solução do problema, peço que dê um Like, clicando no botão do polegar, acima e a direita. Obrigado.

Re: Excel VBA - Conta Parcelada 01/10, 02/10, 03/10...

Enviado: 04 Set 2019 às 07:53
por Leonardo7
Jimmy escreveu:Olá Leonardo,

Altere essa linha que você fez:
Código: Selecionar todos
.Cells(linha, 13).Value = Me.TextBox_Parcelamento + " de " + Me.TextBox_Parcelamento
para
Código: Selecionar todos
.Cells(linha, 13).Value = lngParc & " de " & Me.TextBox_Parcelamento.Value
e dê retorno.

Nas mensagens acima que você julgar que ajudaram de alguma forma com a solução do problema, peço que dê um Like, clicando no botão do polegar, acima e a direita. Obrigado.

Muito obrigado Jimmy, funcionou perfeitamente.