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

    [Resolvido]Mensagem, Else sem If ??? não faz sentido

    Compartilhe
    avatar
    lgdelai
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 146
    Registrado : 31/03/2012

    Mensagem, Else sem If ??? não faz sentido

    Mensagem  lgdelai em Seg 28 Out 2013, 15:43

    Salve galera,
    fico grato a quem me ajudar.

    Vejam este código, está aparecendo uma mensagem de erro Else sem If, mas o if ta lá

    tem uma imagem em anexo explicando, por favor vejam.


    Código:
    Private Sub Data_pagamento_AfterUpdate()
    If Month(Me.Data_pagamento) <> Month(Me.Data_vencimento) Or Year(Me.Data_pagamento) <> Year(Me.Data_vencimento) Then
        If Me.[Data_vencimento] = Me.Parent.CONTRATOS![Data_ultimo_pagamento] Then
            Me.Parent.CONTRATOS![Prox_Pagamento] = Null
        Else: Me.Parent.CONTRATOS![Prox_Pagamento] = Me.Parent.CONTRATOS![Dia_para_Pagamento] & Format((Me.[Data_vencimento] + 31), "/mm/yyyy")
    Else
        If Me.[Data_vencimento] = Me.Parent.CONTRATOS![Data_ultimo_pagamento] Then
            Me.Parent.CONTRATOS![Prox_Pagamento] = Null
        Else: Me.Parent.CONTRATOS![Prox_Pagamento] = Me.Parent.CONTRATOS![Dia_para_Pagamento] & Format((Me.[Data_vencimento] + 31), "/mm/yyyy")
    End If
    End Sub
    Anexos
    Else sem if.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (55 Kb) Baixado 3 vez(es)
    avatar
    good guy
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1046
    Registrado : 05/02/2010

    Mensagem, Esae sem if ???

    Mensagem  good guy em Seg 28 Out 2013, 15:56

    Olá ifdelai,

    Amigo, logo de cara podemos ver a falta do End If no seu código. Tire esses ":" após o Else. De onde você tirou esses dois pontos? Estude a formação desta condicional   IF  THEN... (ELSEIF).... ELSE... END IF.


    Private Sub Data_pagamento_AfterUpdate()

    If Month(Me.Data_pagamento) <> Month(Me.Data_vencimento) Or Year(Me.Data_pagamento) <> Year(Me.Data_vencimento) Then    
     
      If Me.[Data_vencimento] = Me.Parent.CONTRATOS![Data_ultimo_pagamento] Then        
      Me.Parent.CONTRATOS![Prox_Pagamento] = Null    
      Else
      Me.Parent.CONTRATOS![Prox_Pagamento] = Me.Parent.CONTRATOS![Dia_para_Pagamento] & Format((Me.[Data_vencimento] + 31), "/mm/yyyy")
      End If

    ElseIf Me.[Data_vencimento] = Me.Parent.CONTRATOS![Data_ultimo_pagamento] Then        
    Me.Parent.CONTRATOS![Prox_Pagamento] = Null    

    Else
    Me.Parent.CONTRATOS![Prox_Pagamento] = Me.Parent.CONTRATOS![Dia_para_Pagamento] & Format((Me.[Data_vencimento] + 31), "/mm/yyyy")End If

    End If

    End Sub
    avatar
    lgdelai
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 146
    Registrado : 31/03/2012

    Re: [Resolvido]Mensagem, Else sem If ??? não faz sentido

    Mensagem  lgdelai em Seg 28 Out 2013, 16:05

    Olá,
    Adicionei os End If como solicitado e agora parece que está ok.

    Não havia colocado antes pois o código funcionava normalmente sem eles.
    talvez porque não haviam mais if's no código, que eu adicionei agora.

    com relaçao aos 2 pontos, sinceramente não sei porque estão ai, pois venho aperfeiçoando o código
    a algum tempo, e provavelmente eu devo ter tido um motivo para deixa-los baseado em ajuda
    de outros usuários.

    ainda com relação aos 2 pontos, eles não tem alguma relação com esta parte do código
    estar fazendo referencia a campos que estão em um sub-formulário ou vice versa?

    Obrigado

    Segue cod modificado e ainda funcionando com os 2 pontos.

    Código:
    If Month(Me.Data_pagamento) <> Month(Me.Data_vencimento) Or Year(Me.Data_pagamento) <> Year(Me.Data_vencimento) Then
        If Me.[Data_vencimento] = Me.Parent.CONTRATOS![Data_ultimo_pagamento] Then
            Me.Parent.CONTRATOS![Prox_Pagamento] = Null
        Else: Me.Parent.CONTRATOS![Prox_Pagamento] = Me.Parent.CONTRATOS![Dia_para_Pagamento] & Format((Me.[Data_vencimento] + 31), "/mm/yyyy")
        End If
    Else
        If Me.[Data_vencimento] = Me.Parent.CONTRATOS![Data_ultimo_pagamento] Then
            Me.Parent.CONTRATOS![Prox_Pagamento] = Null
        Else: Me.Parent.CONTRATOS![Prox_Pagamento] = Me.Parent.CONTRATOS![Dia_para_Pagamento] & Format((Me.[Data_vencimento] + 31), "/mm/yyyy")
        End If
    End If
    End Sub
    avatar
    good guy
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1046
    Registrado : 05/02/2010

    Mensagem, Else sem If ??? não faz sentido

    Mensagem  good guy em Seg 28 Out 2013, 16:33

    Olá amigo,

    Não conheço essa forma de codificar com dois pontos após o Else, mas se depura normalmente... Por favor, dê como resolvido o tópico.

    Um abs.
    avatar
    lgdelai
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 146
    Registrado : 31/03/2012

    Re: [Resolvido]Mensagem, Else sem If ??? não faz sentido

    Mensagem  lgdelai em Seg 28 Out 2013, 16:39

    Ok.

    Problema resolvido, vou abrir outro tópico sobre esta questão.

    desde já muito obrigado pelo axilio.

    Sucesso.

      Data/hora atual: Seg 18 Dez 2017, 07:03