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

ComboBox encadeado a TextBox [RESOLVIDO]

Dúvidas gerais sobre Excel
Rafa - Info
Colaborador
Colaborador
Mensagens: 24
Registrado em: Ter Nov 16, 2010 6:33 pm

Re: ComboBox encadeado a TextBox

Mensagem por Rafa - Info »

Bom dia Mauro, ficou show !! Concerteza sem a sua ajuda não estaria conseguindo fazer um combobox que no excel é simples, mas em VBA é outra história. Eu fiz uma alteração tirando " 'Transforma em verdadeiro se localizado" de dentro do While | Wend , pois o textbox parou de retornar os valores referentes ao combobox, e daí ficou jóia, funcionando sem nenhum erro, a função sLocaliza não funcionou.

Ficou assim:

Código: Selecionar todos

Private Sub ComboBox1_Change()
Dim sVall As Long
    Dim linha   As Long
    Dim sLocaliza As Boolean
    
sLocaliza = False

If ComboBox1.Value = "" Then
        TextBox1 = ""
        'Sai da Rotina
        Exit Sub
   
    Else
        
        sVall = ComboBox1.Value
        linha = 2
       
        While (Range("A" & linha) <> "")
            If (Range("A" & linha) = sVall) And _
            (Range("A" & linha) = sVall) Then TextBox1.Value = Range("B" & linha)
             linha = linha + 1
                    
        Wend
 'Transforma em verdadeiro se localizado
                sLocaliza = True
                'Sai da rotina
                 Exit Sub
   End If
   
    'Se Localizado Falso emite msg
    If sLocaliza = False Then
        MsgBox "Valor não encontrado"
        TextBoxDestino = ""
    End If

End Sub
Agora para ficar perfeito precisa apenas que quando eu coloco um número no combobox que não esteja dentro do cadastrado, ele retorne "número inválido", pois se eu coloco um número válido ele puxa o textbox corretamente ou apago o correto o textbox também apaga, mas se eu coloco um número que não existe no combobox o textbox ainda permanece preenchido com o anterior ou se eu coloco 999 por exemplo e ele não está cadastrado não faz nada também.

Estou muito contente com sua colaboração, desde já agradeço.


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
Mauro Coutinho
Jedi
Jedi
Mensagens: 1561
Registrado em: Sáb Mar 13, 2010 8:10 pm
Localização: São José dos Pinhais - Pr

Re: ComboBox encadeado a TextBox

Mensagem por Mauro Coutinho »

Rafael, não entendi sua observação, na Rotina anterior sem a sua modificação, a mesma faz exatamente isso, quando o Numero é valido preenche o TextBox1 e quando não, emite a mensagem "Valor não encontrado", é só alterar essa msg para Invalido, e o Textbox1 é limpo.

Na rotina a função da variavel sLocaliza é iniciada como Falso e transformada em Verdadeiro quando localizado o numero, e da maneira que fez ela será sempre verdadeira, ou seja, se for digitado numero invalido, como a variavel está fora da instrução While / Wend a mesma será sempre True, uma outra questão, pelo menos na rotina que postou, é o nome dos TextBox(s) diferentes, temos TextBox1 e TextBoxDestino, a não ser que esteja utilizando dois.

Sendo assim, não vejo o porque de alterar a rotina anterior, a não ser que eu não tenha entendido corretamente, se for isso, anexe um exemplo de seu modelo.

[]s


Rafa - Info
Colaborador
Colaborador
Mensagens: 24
Registrado em: Ter Nov 16, 2010 6:33 pm

Re: ComboBox encadeado a TextBox [RESOLVIDO]

Mensagem por Rafa - Info »

Mauro, se tem toda a razão, ao renomear o seu código para o meu, ficou uma perna errada, ao qual eu tentei corrigir tirando o true slocaliza de dentro do while, apaguei tudo e refiz e funcionou da sua maneira.

Agora está perfeito, trabalhando 100%.

Agradeço sua colaboração, graças a sua experiência o combobox está da maneira correta.

Valeu, até mais.


guguva
Acabou de chegar
Acabou de chegar
Mensagens: 5
Registrado em: Sex Out 05, 2018 12:19 am

Re: ComboBox encadeado a TextBox [RESOLVIDO]

Mensagem por guguva »

Boa noite,

Podem me ajudar?

Combobox encadeados:

Cmb_Mes_Pesq (dados) ao clicar Btn_Pesq_Cadastro = chamo lista na listbox as informações
Cmb_Meses_Pesq (dados) ao clicar Btn_Filtrar_Meses = chamo lista na listbox as informações
Cmb_Responsavel_Pesq (dados) ao clicar Btn_Filtrar_Responsavel = chamo na listbox as informações
Cmb_Conta_Pesq (dados) ao clicar Btn_Filtrar_Conta = chamo lista na listbox as informações
Cmb_Status_Pesq (dados) ao clicar Btn_Filtrar_Status = chamo na listbox as informações


Eu quero chamá-los combinados, como faço?


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