MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

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

    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)

    good guy
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 920
    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

    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

    good guy
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 920
    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.

    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: Dom 04 Dez 2016, 01:54