MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    Condição para a condição. Interferência de End If

    Compartilhe
    avatar
    biligo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 207
    Registrado : 10/04/2014

    Condição para a condição. Interferência de End If

    Mensagem  biligo em Sex 14 Abr 2017, 05:57

    Boas galera,

    Esbarrei em uma questão e gostaria do auxilio dos mestres presentes para minha aprimoração.
    Segue a seguinte sequencia:

    Private Sub Comando0_Click()

    If IsNull(Me.Texto1) Then
       If Me.Texto3 < Me.Texto1 Then
           DSum (Me.Texto3 * Me.Texto5)
           
    Else
       If Me.Texto5 < Me.Texto3 Then
           DSum (Me.Texto1 * Me.Texto5)
           
    End If
       MsgBox "Alguma condição deve ter sido ativada e o codigo seguira daqui", vbInformation
       End If


    End Sub

    A questão é que o 3 IF esbarra no 1° End If mas ele deveria ser do 1 if.
    Existe alguma solução para resolver esta questão deste modo? Ou não é possivel adicionar Uma condição para criar condições para que caso essa segunda condição seja cumprida fechar a primeira e dar
    continuidade a segunda condição.

    Pss.: Não gostaria de utilizar GoTo Line se houver outra alternativa agradeço.
    avatar
    Silvio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3481
    Registrado : 20/04/2011

    Re: Condição para a condição. Interferência de End If

    Mensagem  Silvio em Sex 14 Abr 2017, 12:00

    Bom dia...

    Utilize  o Select Case para isso.

    Veja o link:
    [Você precisa estar registrado e conectado para ver este link.]


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    [Você precisa estar registrado e conectado para ver este link.]
    avatar
    biligo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 207
    Registrado : 10/04/2014

    Re: Condição para a condição. Interferência de End If

    Mensagem  biligo em Sex 14 Abr 2017, 18:34

    Silvio Grato pela resposta.
    Mas houve um erro. Case sem Select Case
    Talvez eu não esteja fazendo corretamente mas acho que existe uma interferência devido abrir uma condição.


    Select Case IsNull(Me.Texto1) Then
    Case 1

      If Me.Texto3 < Me.Texto1 Then
          DSum (Me.Texto3 * Me.Texto5)
         
    Case 2

      If Me.Texto5 < Me.Texto3 Then
          DSum (Me.Texto1 * Me.Texto5)
         
    End Select
      MsgBox "Alguma condição deve ter sido ativada e o codigo seguira daqui", vbInformation
    Else
    MsgBox "Nenhuma condição foi ativada e o codigo não seguira",vbInformation
      End If
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6203
    Registrado : 05/11/2009

    Re: Condição para a condição. Interferência de End If

    Mensagem  Alexandre Neves em Sex 21 Abr 2017, 20:15

    Boa tarde,
    Nomeie de forma normalizada. O código como está não é inteligível
    Descreva o que pretende


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

      Data/hora atual: Sab 24 Jun 2017, 13:18