Vídeo recomendado
https://youtu.be/diWPPPhW-9E

se celula estiver vazia, trazer mensagem "Não há registro" [RESOLVIDO]

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
rachelgdias
Colaborador
Colaborador
Mensagens: 43
Registrado em: Sex Jan 31, 2020 9:53 am

se celula estiver vazia, trazer mensagem "Não há registro" [RESOLVIDO]

Mensagem por rachelgdias »

Boa tarde,
Estou com um botao de comando (no evento click), o excel faz a pesquisa avançade e me tras alguns resultados nas textbox.
*Problema: Quando faço a pesquisa por exemplo, REAJUSTE DA PARCELA, ao clicar no botao de comando ele filtra, e entao quando nao tem nenhum REAJUSTE DA PARCELA, o excel vai filtrar, mas as linhas vao ficar em BRANCO.

*gostaria que quando ocorresse isso o excel me trouxece uma msgbox," a celula esta vazia" e desse um exit sub. So que ele dá erro, pois quero trazer um valor para textbox quando filtrado, e quando a celula esta vazia, ele da erro.

alguem pode me ajudar.
pensei assim, se celula a2 conter um valor entao a textbox2 me tras o valor da celula a2,
e se a celula a2 estiver vazia, entao me tras a msgbox, a celula a2 esta vazia e dá um exit sub para encerrar.
Editado pela última vez por rachelgdias em Sex Fev 14, 2020 7:02 am, em um total de 1 vez.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
milton
Manda bem
Manda bem
Mensagens: 147
Registrado em: Sex Jun 17, 2016 8:22 am

Re: se celula estiver vazia, trazer mensagem "Não há registro"

Mensagem por milton »

rachelgdias boa tarde!
Se voce puder, anexa o arquivo ou parte dele, desse forma fica mais de alguém pode ajudar.
abraço


rachelgdias
Colaborador
Colaborador
Mensagens: 43
Registrado em: Sex Jan 31, 2020 9:53 am

Re: se celula estiver vazia, trazer mensagem "Não há registro"

Mensagem por rachelgdias »

Gente consegui resolver meu problema: Trazer o ultimo dado preenchido da linha para TEXTBOX , (se houver registro executa e se nao houver registro *estiver vazia a linha, da a mensagem "Nao ha nada registrado")

Postando a minha soluçao:

Private sub commandButton1_Click()

Range("A2:A1000").Select "seleciona a coluna desejada
If IsEmpty (ActiveCelll) then 'se nao tiver nada na linha ele PARA e me dá a MSGBOX
MsgBox "Não há nada registrado"
Exit Sub "sai do comando e para tudo
End if

Else "ou
Dim Linha As Long "se a ultima linha estiver preenchida executa
Linha = Range ("A2").End(xlDown).Row ' lê a ultima linha preenchida
UltimaLinha = Range("A" & Linha).Value 'pega o resultado da ultima linha preenchida
textbox1.value = UltimaLinha 'inseri o ultimo dado da linha para minha textbox
End if

End sub


Quero agradecer a todos do forum, pois vcs são otimos.


Avatar do usuário
Reinaldo
Jedi
Jedi
Mensagens: 1537
Registrado em: Sex Ago 01, 2014 4:09 pm
Localização: Garça - SP / SCS - SP

Re: se celula estiver vazia, trazer mensagem "Não há registro"

Mensagem por Reinaldo »

Bom que tenha resolvido; porem a rotina exposta acima, da maneira que está, irá gerar erro no editor VBE


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
Reinaldo
Jedi
Jedi
Mensagens: 1537
Registrado em: Sex Ago 01, 2014 4:09 pm
Localização: Garça - SP / SCS - SP

Re: se celula estiver vazia, trazer mensagem "Não há registro"

Mensagem por Reinaldo »

Bom que tenha resolvido; porem a rotina exposta acima, da maneira que está, irá gerar erro de compilação.


rachelgdias
Colaborador
Colaborador
Mensagens: 43
Registrado em: Sex Jan 31, 2020 9:53 am

Re: se celula estiver vazia, trazer mensagem "Não há registro"

Mensagem por rachelgdias »

Reinaldo escreveu: Qua Fev 12, 2020 11:21 am Bom que tenha resolvido; porem a rotina exposta acima, da maneira que está, irá gerar erro no editor VBE
Ai meu Deus !!!!! O que eu teria que mudar ..... Só esperando o ERRO......


Avatar do usuário
Reinaldo
Jedi
Jedi
Mensagens: 1537
Registrado em: Sex Ago 01, 2014 4:09 pm
Localização: Garça - SP / SCS - SP

Re: se celula estiver vazia, trazer mensagem "Não há registro"

Mensagem por Reinaldo »

Sem considerar a rotina toda,mas apenas a escrita
o VBA para comentarios aceita apenas Aspa simples " ' " e não dupla " " "
Range("A2:A1000").Select "seleciona a coluna desejada (isso em varias linhas)

O end if antes do Else
Exit Sub "sai do comando e para tudo
End if

Else "ou...

Para "rodar" algo +/- assim

Código: Selecionar todos

Private Sub commandButton1_Click()
Dim Linha As Long
Dim UltimaLinha As String                                      'se a ultima linha estiver preenchida executa

Range("A2:A1000").Select                     'seleciona a coluna desejada"
    If IsEmpty(ActiveCell.Value) Then                    'se nao tiver nada na linha ele PARA e me dá a MSGBOX
        MsgBox "Não há nada registrado"
        Exit Sub                                                'sai do comando e para tudo
    Else                                                              'ou
        Linha = Range("A2").End(xlDown).Row       ' lê a ultima linha preenchida
        UltimaLinha = Range("A" & Linha).Value      'pega o resultado da ultima linha preenchida
        textbox1.Value = UltimaLinha                        'inseri o ultimo dado da linha para minha textbox
    End If
End Sub
Se atende ou nãon~]ao sei; pois não entendi o que deseja/espera


rachelgdias
Colaborador
Colaborador
Mensagens: 43
Registrado em: Sex Jan 31, 2020 9:53 am

Re: se celula estiver vazia, trazer mensagem "Não há registro" RESPONDIDO

Mensagem por rachelgdias »

Reinaldo escreveu: Qua Fev 12, 2020 3:04 pm Sem considerar a rotina toda,mas apenas a escrita
o VBA para comentarios aceita apenas Aspa simples " ' " e não dupla " " "
Range("A2:A1000").Select "seleciona a coluna desejada (isso em varias linhas)

O end if antes do Else
Exit Sub "sai do comando e para tudo
End if

Else "ou...

Para "rodar" algo +/- assim

Código: Selecionar todos

Private Sub commandButton1_Click()
Dim Linha As Long
Dim UltimaLinha As String                                      'se a ultima linha estiver preenchida executa

Range("A2:A1000").Select                     'seleciona a coluna desejada"
    If IsEmpty(ActiveCell.Value) Then                    'se nao tiver nada na linha ele PARA e me dá a MSGBOX
        MsgBox "Não há nada registrado"
        Exit Sub                                                'sai do comando e para tudo
    Else                                                              'ou
        Linha = Range("A2").End(xlDown).Row       ' lê a ultima linha preenchida
        UltimaLinha = Range("A" & Linha).Value      'pega o resultado da ultima linha preenchida
        textbox1.Value = UltimaLinha                        'inseri o ultimo dado da linha para minha textbox
    End If
End Sub
Se atende ou nãon~]ao sei; pois não entendi o que deseja/espera
Muito obrigada Reinaldo, fiz todas as correções e esta tudo certo.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder