Notifications
Clear all

ComboBox - valor de propriedade inválido

6 Posts
2 Usuários
0 Reactions
3,930 Visualizações
(@rubelio)
Posts: 53
Trusted Member
Topic starter
 

Bom dia a todos!

Tenho um Combobox em VBA Excel onde defini MatchRequired como True. Quando digito uma opção que não consta do ListIndex ele retorna uma janela denominada Microsoft Forms com o seguinte erro: "Valor de propriedade inválido".

Eu gostaria de customizar esse erro com uma mensagem mais direcionada, como por exemplo: Informe a ferramenta correta.

Alguém poderia me orientar sobre como devo proceder?

Obrigado,

Rubélio

 
Postado : 16/09/2013 8:24 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

O ideal seria ter postado a rotina que está utilizando, ou até mesmo um exemplo reduzido e compactado para poder analisar melhor a situação, então vou por suposição, as instruções abaixo foram tiradas da propria ajuda do VBA, veja se ajuda :

Private Sub ComboBox1_Change()
    If ComboBox1.MatchRequired = True Then
    'MSForms Neste caso, trata automaticamente
    Else
        If ComboBox1.MatchFound = True Then 'Se localizada = True
            MsgBox "Correspondencia encontrada; correspondente opcional."
        Else 'Se não, não foi localizada e trata o erro
            MsgBox "Correspondencia NÃO encontrada; correspondente " _
                    & "opcional."
        End If
    End If
End Sub

[]s

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 16/09/2013 8:32 pm
(@rubelio)
Posts: 53
Trusted Member
Topic starter
 

Mauro, obrigado pelo retorno.
Tentei adaptar as instruções que me enviou, porém não obtive sucesso.
Encaminho-lhe um exemplo compactado da minha rotina para a sua análise.
Observe sua instrução que tentei adaptar e a minha que eu tentava utilizar. O mesmo erro ocorre tanto para a ComboBox turno quanto para a ComboBox sti.
Abç
Rubélio

Quando eu disse Compactado, estou me referindo as Regras do Forum, em que os anexos teem de estar Compactado utilizando algum programa de compactação, tipo o WinRar, Winzip ... então alterei o seu anexo.

 
Postado : 17/09/2013 5:36 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Rubelio, a mensagem de erro que você recebe e devido ao fato de ter definido a Propriedade MatchRequired = True do ComboBox diretamente na Janela Propriedades e não atraves da rotina, se quer simplesmente evitar esta mensagem é só definir o valor acima para False que é o valor padrão do ComboBox.

A Propriedade MatchRequired exige obrigatoriamente que o combo esteja preenchido com algum valor, mas geralmente ela é utizada com a propriedade MatchFound, ou seja esta deverá estar associada a alguma rotina de pesquisa.

Se entendi corretamente, alem de você querer que o Combo seja preenchido com um Valor Valido, não quer que saia do Combo se o mesmo estiver vazio, se for isto fiz umas adaptações em seu modelo, veja se é isto.

Faça os testes e qq duvida retorne.

[]s

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/09/2013 5:37 pm
(@rubelio)
Posts: 53
Trusted Member
Topic starter
 

Mauro, ficou perfeito. É isso mesmo que eu precisava;
Muito obrigado pela correção e esclarecimentos !!!

 
Postado : 17/09/2013 9:59 pm
(@rubelio)
Posts: 53
Trusted Member
Topic starter
 

Mauro, bom dia!

Em relação a sua ajuda para que a Combo seja preenchida com um Valor Válido e não permita sair dela se ela estiver vazia, não tenho dúvidas.

Consegui estabelecer a instrução de saída para o TextBox "data", sem problema algum, porém não consigo o mesmo para o TextBox "quantidade". Me ajude, por favor!

Explorando um pouco mais seus conhecimentos:

1. quanto ao TextBox "data" é possível verificar ao sair se o valor informado é realmente uma data?

2. quanto ao TextBox "quantidade" ao sair como assegurar que o valor informado seja numérico?

Segue em anexo o exemplo.

Abç.

Rubélio

 
Postado : 27/09/2013 6:09 am