Fórum Excel Bácico, Avançado e Vba

Este fórum é destina a usuário de Excel, que queiram compartilhar informações a básicas, avançadas e programação em VBA...
 
InícioInício  FAQFAQ  BuscarBuscar  MembrosMembros  GruposGrupos  Registrar-seRegistrar-se  Login  

Compartilhe | 
 

 UserForm - Inserir dados pré-determinados em caixa de texto [RESOLVIDO]

Ver o tópico anterior Ver o tópico seguinte Ir em baixo 
AutorMensagem
Erikson



Mensagens : 21
Data de inscrição : 15/08/2011

MensagemAssunto: UserForm - Inserir dados pré-determinados em caixa de texto [RESOLVIDO]   Sab Out 08, 2011 2:29 pm

Bom dia,
Em uma UserForm criei uma caixa de texto para inserir Ufs (Estados). Pelo VBA como determinar os 26 estados, e caso o usuário digite uma sigla inexistente, execute uma msgbox o alertando do erro e o obrigue a preencher corretamente?

Acho que seria algo similar a isso:

If Me.UF_Textbox = "SP" Then 'tem que ser igual SP
Else: 'aqui minha rotina que será executada caso seja digitado outro valor que não seja SP
Exit Sub
End If

O problema do codigo acima é que só consigo colocar uma condição no caso SP. Gostaria de dizer ao VBA que valor tem que ser igual a SP, mas tambem pode ser igual a RJ ou RS, PE, etc... Como váriaveis.


Última edição por Erikson em Dom Out 09, 2011 5:52 am, editado 2 vez(es)
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: UserForm - Inserir dados pré-determinados em caixa de texto [RESOLVIDO]   Sab Out 08, 2011 9:53 pm

Boa tarde!!!

Segue um exemplo, favor adapta-lo a sua necessidade...

Código:

    Select Case Me.TextBox1.Value
    Case "AL", "AP", "AM", "BA", "CE", "DF", "GO", "ES", "MA", "MT", "MS", "MG", "PA", "PB", "PR", "PE", "Pi", "RJ", "RN", "RS" _
    , "RO", "RR", "SP", "SC", "SE", "TO"
   
    Case Else
    MsgBox "Sigla inexixtente", , "Preenchimento Obrigatório!"
    Exit Sub
    End Select

Att... Smile
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Erikson



Mensagens : 21
Data de inscrição : 15/08/2011

MensagemAssunto: Re: UserForm - Inserir dados pré-determinados em caixa de texto [RESOLVIDO]   Sab Out 08, 2011 11:21 pm

Alexandre, obrigado pela velocidade e precisão.
Já tinha tentado algo com select case, meu erro é que estava usando entre case e os valores, sinais como: = ou <>, não sabia que podia usar o case e o valor na sequencia como vc ensinou. A adapção que fiz ficou assim:
Código:
Select Case Me.UF_Origem.Value
Case "AL", "AP", "AM", "BA", "CE", "DF", "GO", "ES", "MA", "MT", "MS", "MG", "PA", "PB", "PR", "PE", "PI", "RJ", "RN", "RS", "RO", "RR", "SP", "SC", "SE", "TO" _
  , "al", "ap", "am", "ba", "ce", "df", "go", "es", "ma", "mt", "ms", "mg", "pa", "pb", "pr", "pe", "pi", "rj", "rn", "rs", "ro", "rr", "sp", "sc", "se", "to" _
  , "Al", "Ap", "Am", "Ba", "Ce", "Df", "Go", "Es", "Ma", "Mt", "Ms", "Mg", "Pa", "Pb", "Pr", "Pe", "Pi", "Rj", "Rn", "Rs", "Ro", "Rr", "Sp", "Sc", "Se", "To" _
  , "aL", "aP", "aM", "bA", "cE", "dF", "gO", "eS", "mA", "mT", "mS", "mG", "pA", "pB", "pR", "pE", "pI", "rJ", "rN", "rS", "rO", "rR", "sO", "sC", "sE", "tO"
Case Else
MsgBox "Sigla Inexistente!", vbInformation, "Preenchimento Obrigatório"
Me.UF_Origem.Value = ""
Me.UF_Origem.BorderColor = &HFFFF&
Me.UF_Origem.BorderStyle = fmBorderStyleSingle
Me.UF_Origem.SetFocus
Exit Sub
End Select

Ficou perfeito Alexandre, o pequeno problema é que ela fez distinção de maiúsculas e minúsculas, ai tive que colocar todas as combinações possiveis. Se tiver algo pra minimizar esse código ficaria perfeito, mas do jeito que dá, já está ótimo.

Obrigado!
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: UserForm - Inserir dados pré-determinados em caixa de texto [RESOLVIDO]   Sab Out 08, 2011 11:48 pm

Boa tarde!!

Quem bom que, em parte deu certo!! Laughing ...
..vou tentar melhorar....aguarde com paciência que devo te retornar.

Att..


Última edição por alexandrevba em Dom Out 09, 2011 12:44 am, editado 2 vez(es)
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: UserForm - Inserir dados pré-determinados em caixa de texto [RESOLVIDO]   Dom Out 09, 2011 12:43 am

Boa noite!!!

Altere a linha.....

Código:
Select Case Me.UF_Origem.Value
...Para...

Código:
Select Case UCase(Me.UF_Origem.Value)

Espero ter ajudado....caso contrario favor reportar novamente ao fórum...fico no aguardo! scratch

Att..
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Erikson



Mensagens : 21
Data de inscrição : 15/08/2011

MensagemAssunto: Re: UserForm - Inserir dados pré-determinados em caixa de texto [RESOLVIDO]   Dom Out 09, 2011 5:51 am

Alexandre sem comentários, superou minhas espectativas. Ficou ótimo.
Obrigado!
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Conteúdo patrocinado




MensagemAssunto: Re: UserForm - Inserir dados pré-determinados em caixa de texto [RESOLVIDO]   Hoje à(s) 8:21 pm

Voltar ao Topo Ir em baixo
 
UserForm - Inserir dados pré-determinados em caixa de texto [RESOLVIDO]
Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo 
Página 1 de 1
 Tópicos similares
-
» Como inserir dados no MEIO de um arquivo txt
» [XCREATOR] [TUTORIAL] Caixa de Texto avançada
» Como criar caixa de texto
» Personalizar caixa de texto e caixa de smileys
» Alterar o formado ta caixa de texto

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
Fórum Excel Bácico, Avançado e Vba :: Avançado/VBA :: Excel Avançado/VBA-
Ir para: