Notifications
Clear all

Ajuda Com Rotina Vba

9 Posts
2 Usuários
0 Reactions
2,981 Visualizações
(@edgard-jr)
Posts: 31
Eminent Member
Topic starter
 

pessoal na rotina abaixo preciso que apos verificar se o campo ( TextBox5.Text = "" Then
MsgBox "Endereço Imcompleto") foi preenchido com algum dado, ele continue o codigo. mas não está dando certo.
o codigo usado foi esse

Private Sub commandButton1_Click()

If ComboBox2.Value = "Origem" Then

If TextBox5.Text = "" Then
MsgBox "Endereço Imcompleto"

Else
sCriterioDaBusca = TextBox5.Text

Range("i13").Value = TextBox3.Value
Range("H16").Value = TextBox4.Value
Range("I15").Value = TextBox1.Value
Range("m13").Value = TextBox2.Value
Range("i14").Value = TextBox5.Value
Range("k12").Value = ComboBox3.Value

Sheets("Relatorio de corridas").Activate
Rows("2:2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A2").Select
ActiveCell.Offset(0, 2).Value = TextBox3.Text
ActiveCell.Offset(0, 4).Value = ComboBox3.Text
Sheets("Tela Principal").Activate

End If

Else

If TextBox5.Text = "" Then
MsgBox "Endereço Imcompleto"

Else
sCriterioDaBusca = TextBox5.Text
Range("i18").Value = TextBox3.Value
Range("i21").Value = TextBox4.Value
Range("i20").Value = TextBox1.Value
Range("o15").Value = TextBox2.Value
Range("i19").Value = TextBox5.Value

Sheets("Relatorio de corridas").Activate
Range("A2").Select
ActiveCell.Offset(0, 3).Value = TextBox3.Text
Sheets("Tela Principal").Activate

End If
End If

TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
txt_Procurar = ""

ComboBox2.ListIndex = 1

End Sub

Após o If TextBox5.Text = "" Then MsgBox "Endereço Imcompleto" coloquei um Exit Sub. mas quando o textbox5 esta com os dados certos o codigo nao continua por algum motivo q eu desconheço

 
Postado : 07/12/2011 11:25 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!!

Veja se vai dar certo..

Substitui essa linha

If TextBox5.Text = "" Then
MsgBox "Endereço Imcompleto"

Por essa..

elseIf TextBox5.Text = "" Then
MsgBox "Endereço Imcompleto"

Att..

 
Postado : 08/12/2011 3:36 am
(@edgard-jr)
Posts: 31
Eminent Member
Topic starter
 

Deu o seguinte erro

Erro de compilação em modulo oculto: frmBusca
Geralmente esse erro ocorre quando o codigo é imcompativelcom a versão,a plataforma ou arquitetura desse aplicativo
Clique em "Ajuda" para obter informações.

 
Postado : 09/12/2011 12:34 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

O ideal seria mostrar o arquivo.

 
Postado : 09/12/2011 6:00 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Edgard, quanto ao erro, de uma olhada no link abaixo, se pesquisar na net encontrará outras possiveis causas :

A mensagem de erro "Erro de compilação no módulo oculto" é exibida quando você inicia o Word ou o Excel
http://support.microsoft.com/kb/307410/pt-br

Veja que o erro pode ser por incompatibilidades de versão ou bibliotecas ou contrelos ausentes, ou ainda estiver fazendo chamada a outros aplicativos inexistentes.

Quanto a rotina do Botão, eu acredito que o modelo abaixo é o que precisa, faça um teste e se for isto, depois adicione as instruções originais de sua rotina :

Private Sub commandButton1_Click()
    
    'Se TextBox estiver Vazio Não Continua
    If TextBox5.Text = "" Then
        
            MsgBox "Endereço Imcompleto"
        Exit Sub
        
    Else
    
        'Se ComboBox2 = Origem e Txtbox Preenchido
        If ComboBox2.Value = "Origem" Then
            
            MsgBox "TextBox Preenchido e foi Selecionado Origem"
            MsgBox "Rotina Continua"
            
        Else
            
            'Se ComboBox2 = Destino e TxtBox preenchido
            MsgBox "TextBox Preenchido e foi Selecionado Destino"
            MsgBox "Rotina Continua"
            
        End If
    
    End If

End Sub

[]s

 
Postado : 09/12/2011 7:40 am
(@edgard-jr)
Posts: 31
Eminent Member
Topic starter
 

bom o arquivo ta em anexo.
O formulario é o frmBusca, e o botão o CommandButton1. da uma olhada ;)

 
Postado : 09/12/2011 8:13 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Edgard, você chegou a testar com a rotina que indiquei ?

Se Sim, deu o mesmo erro ?

Uma forma de saber em qual linha está apresentando erro, é acompanhar a rotina Passo a Passo, utilizando a tecla "F8", selecione a rotina inicial e vá apertando a tecla e será executada linha por linha possibilitando acompanhar os resultados.

[]s

 
Postado : 09/12/2011 8:22 pm
(@edgard-jr)
Posts: 31
Eminent Member
Topic starter
 

Cara nao da erro nenhum , mas tbm nao da certo =/.

ainda estou sem entender

 
Postado : 09/12/2011 10:22 pm
(@edgard-jr)
Posts: 31
Eminent Member
Topic starter
 

Perfeito Mauro Segui sua dica e funcionou perfeitamente

 
Postado : 09/12/2011 10:42 pm