MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


2 participantes

    [Resolvido]campo obrigatorio

    avatar
    xikutuga
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 84
    Registrado : 07/08/2013

    [Resolvido]campo obrigatorio Empty [Resolvido]campo obrigatorio

    Mensagem  xikutuga 9/12/2013, 18:54

    boa noite,

    Estou a tentar juntar dois códigos existentes aqui no forum, mas não estou a conseguir que produzam efeitos práticos que preciso..
    então é o seguinte
    criei um botao para salvar os registos inseridos mas quero que o mesmo antes de salvar verifique se já estão alguns campos preenchidos e caso contrario não salve o registo
    os codigos :

    Private Sub Comando37_Click()
    Dim msg
    DoCmd.RunCommand acCmdSaveRecord
    End Sub

    Private Sub Form_BeforeUpdate(Cancel As Integer)
    Dim strMsg As String
    strMsg = "Foram efectuadas alterações"
    strMsg = strMsg & "...Deseja gravar as alterações?"
    If MsgBox(strMsg, vbQuestion + vbYesNo, "Gravar?") = vbYes Then
    'do nothing
    Else
    DoCmd.RunCommand acCmdUndo
    End If
    End Sub

    funcionam na perfeição........mas não consigo encaixar esta verificação...

    If IsNull(Me.ProcessoNº) Or Me.ProcessoNº.Value = "" Then
    MsgBox "ProcessoNº é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.ProcessoNº.SetFocus

    End If
    End Sub


    obrigado
    abraços
    avatar
    Convidado
    Convidado


    [Resolvido]campo obrigatorio Empty Re: [Resolvido]campo obrigatorio

    Mensagem  Convidado 9/12/2013, 19:06

    Olá, o formato do campo ProcessoNº é texto ou número?
    avatar
    xikutuga
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 84
    Registrado : 07/08/2013

    [Resolvido]campo obrigatorio Empty Re: [Resolvido]campo obrigatorio

    Mensagem  xikutuga 9/12/2013, 19:07

    boa noite ...
    é texto...
    avatar
    Convidado
    Convidado


    [Resolvido]campo obrigatorio Empty Re: [Resolvido]campo obrigatorio

    Mensagem  Convidado 9/12/2013, 19:51

    vc tem que colocar a verificação do campo em branco antes do evento salvar, ou seja no evento ao clicar do botão salvar:

    If IsNull(Me.ProcessoNº) Or Me.ProcessoNº = "" Then
    MsgBox "ProcessoNº é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção!"
    Me.ProcessoNº.SetFocus
    Else
    Aqui o código que salva o registro

    RDuarte
    RDuarte
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 23/11/2012

    [Resolvido]campo obrigatorio Empty Re: [Resolvido]campo obrigatorio

    Mensagem  RDuarte 9/12/2013, 19:56

    Xikutuga, tudo bem.

    Ver se o código abaixo pode te ajudar.

    Ele fica no evento ao clicar do botão de comando: cmdNovo

    ..............................................................................................................................

    Private Sub cmdNovo_Click()
    On Error Resume Next

    Dim ctl As Control

    For Each ctl In Me.Controls
      If IsNull(ctl) Then
           MsgBox "Existem campos vázios! " & vbCrLf & "Favor verifique!", vbInformation, "Atenção"
           Exit Sub
      End If
     
    Next ctl

    Dim strMsg As String
    Dim resposta As String

    strMsg = "Foram efectuadas alterações"
    strMsg = strMsg & "...Deseja gravar as alterações?"

    resposta = MsgBox(strMsg, vbQuestion + vbYesNo, "Gravar?")

    If resposta = vbYes Then

    DoCmd.GoToRecord , , acNewRec

    DoCmd.RunCommand acCmdSaveRecord
    MsgBox "As alterações foram salvas com sucesso!", vbInformation, "Atenção"

    'Else

    'DoCmd.RunCommand acCmdUndo

    End If

    End Sub

    ...........................................................................................................

    Até mais....

    RDuarte
    RDuarte
    RDuarte
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 23/11/2012

    [Resolvido]campo obrigatorio Empty Re: [Resolvido]campo obrigatorio

    Mensagem  RDuarte 9/12/2013, 20:05

    Xikutuga.

    Coloque abaixo do último "End If" a seguinte linha:

    Forms![Cadastro de Clientes].Requery

    Atenção: No lugar de Cadastro de Clientes, você deve colocar o nome do formulário que será atualizado, ok.

    Até mais.

    RDuarte
    avatar
    Convidado
    Convidado


    [Resolvido]campo obrigatorio Empty Re: [Resolvido]campo obrigatorio

    Mensagem  Convidado 9/12/2013, 20:13

    vc pode fazer o seguinte, no campo que vc quer deixar como obrigatório, no evento ao sair:
    If IsNull(Me.ActiveControl) Then
    MsgBox "Preenchimento obrigatório do campo...", vbCritical
    SeuCampoObrigatório.SetFocus
    Cancel = 1
    End If
    e no botão salvar deixa somente o comando para esse fim
    avatar
    xikutuga
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 84
    Registrado : 07/08/2013

    [Resolvido]campo obrigatorio Empty Re: [Resolvido]campo obrigatorio

    Mensagem  xikutuga 10/12/2013, 14:03

    ola boa tarde

    antes de mais obrigado a todos pela solidariedade e pela brevidade das respostas...
    caros colegas betogivoni e Rduarte, o codigo que me indicaram funca tanto um como o outro vou optar por usar o do betogivoni...


    abraço.....
    RDuarte
    RDuarte
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 23/11/2012

    [Resolvido]campo obrigatorio Empty Re: [Resolvido]campo obrigatorio

    Mensagem  RDuarte 10/12/2013, 16:40

    Xikutuga.

    O Fórum agradece pelo retorno.

    RDuarte

    Conteúdo patrocinado


    [Resolvido]campo obrigatorio Empty Re: [Resolvido]campo obrigatorio

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 27/4/2024, 18:37