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]Código com ElseIf

    Compartilhe

    joão2017
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 75
    Registrado : 16/09/2017

    [Resolvido]Código com ElseIf

    Mensagem  joão2017 em Qui 19 Jul 2018, 00:59

    Boa noite!
    Alguém pode me dar uma explicação de quando usar ElseIf?

    if then else eu sei, mas já vi varios codigos com ElseIf mas não entendi.

    Obrigado
    avatar
    Alexandre Fim
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 545
    Registrado : 13/12/2016

    Re: [Resolvido]Código com ElseIf

    Mensagem  Alexandre Fim em Qui 19 Jul 2018, 02:01

    Boa Noite,

    Voce pode usar o ELSEIF para uma ou mais condições antes de fechar com END IF.

    Segue exemplo de uma função que Habilita/Desabilita botoes de comando conforme o parametro informado.


    If nParam = 1 Then 'Habilita todos os comandos
    With nForm
    .cmdSair.enabled = True
    .cmdNovo.enabled = True
    .cmdSalvar.enabled = True
    .cmdExcluir.enabled = True
    .cmdAlterar.enabled = True
    .cmdCancelar.enabled = True
    .cmdPesquisar.enabled = True
    End With
    ElseIf nParam = 2 Then 'Novo registro
    With nForm
    .cmdSair.enabled = True
    .cmdNovo.enabled = False
    .cmdSalvar.enabled = True
    .cmdExcluir.enabled = False
    .cmdAlterar.enabled = False
    .cmdCancelar.enabled = True
    .cmdPesquisar.enabled = False
    End With
    ElseIf nParam = 3 Then 'Alterar registro
    With nForm
    .cmdSair.enabled = True
    .cmdNovo.enabled = False
    .cmdSalvar.enabled = True
    .cmdExcluir.enabled = False
    .cmdAlterar.enabled = False
    .cmdCancelar.enabled = True
    .cmdPesquisar.enabled = False
    End With
    End If


    OBS.: Existem situações que poderá existir mais de 3 condições. Neste caso eu sugiro a utilização do SELECT CASE.

    Exemplo de SELECT CASE usado em ribbon:

    Select Case control.ID
    Case "sair": visible = True
    Case "admin": visible = True
    Case "alterarsenha": visible = True
    Case "parametros": visible = True
    Case "usuarios": visible = False
    Case "empresa": visible = True
    Case "clientes": visible = True
    Case "produtos": visible = True
    Case "fornecedores": visible = True
    Case "transportadoras": visible = True

    Case "formapagto": visible = True
    Case "planocontas": visible = True
    Case "caixafin": visible = True
    Case "bancos": visible = True
    Case "origemestoque": visible = True
    Case "origemreceber": visible = True
    Case "produtogrupo": visible = True
    Case "produtotipo": visible = True


    Case "statuspagamento": visible = True
    Case "statusreceber": visible = True
    Case "tipoentrega": visible = True
    Case "tiponegociacao": visible = True


    Case "pedidovenda": visible = True
    Case "liberarpedido": visible = True
    Case "tabelapreco": visible = True

    Case "requisicaocompras": visible = True
    Case "cotacaocompras": visible = False
    Case "pedidocompras": visible = False

    Case "estoqueprod": visible = True

    Case "faturarpedido": visible = True
    Case "controlecheque": visible = True
    Case "contaspagar": visible = True
    Case "lancamentospagar": visible = True
    Case "contasreceber": visible = True
    Case "lancamentosreceber": visible = True

    Case "rel_pedido_venda": visible = True
    Case "rel_comissao_vendedor": visible = True
    Case "rel_posicao_estoque": visible = True
    Case "rel_vendas_produto": visible = True

    Case "rel_fluxo_caixa": visible = True
    Case "rel_devedor": visible = True
    Case "rel_credor": visible = True
    Case "rel_controle_cheque": visible = True

    Case "rel_cliente": visible = True


    Case Else

    visible = True
    End Select




    Espero ter ajudado.

    []'s

    joão2017
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 75
    Registrado : 16/09/2017

    Re: [Resolvido]Código com ElseIf

    Mensagem  joão2017 em Seg 23 Jul 2018, 15:35

    Amigo, muito obrigado pela aula.
    Valeu mesmo!

    Obrigado.
    avatar
    Alexandre Fim
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 545
    Registrado : 13/12/2016

    Re: [Resolvido]Código com ElseIf

    Mensagem  Alexandre Fim em Seg 23 Jul 2018, 17:47

    Valeu João.
    Boa sorte e bons estudos.

    []'s

      Data/hora atual: Ter 11 Dez 2018, 10:16