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]Erro de compilação 461

    Compartilhe
    avatar
    João Ricardo
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 525
    Registrado : 20/01/2013

    [Resolvido]Erro de compilação 461

    Mensagem  João Ricardo em 25/4/2014, 13:25

    Amigos, bom dia!

    Onde está o erro no trecho do código abaixo:

    If Me.CodPeca = 14 And Me.CodigoMedidaUniforme <= 18 Then
    Em Me.CodPeca dá erro de compilação: Método ou membro de dados não encontrados
    O erro só aparece em Private Sub cboMedida_AfterUpdate()

    Em Private Sub CombPeca_AfterUpdate() não dá erro algum.

    Li o arquivo de ajuda do VBA mas não compreendi.

    Código:
    Private Sub cboMedida_AfterUpdate()
        
            If Me.CodPeca = 14 And Me.CodigoMedidaUniforme <= 18 Then

            Me.cboMedida.SetFocus
            Me.cboMedida.Dropdown
        Else
            MsgBox "Você escolheu uma medida que não pertence a esta peça, escolha outra ou pesquisa nas orientações sobre as medidas do uniforme.", vbCritical, "Sistema Educacional"
            frm.Undo
            Me.CombPeca.Dropdown
        End If

    End Sub

    Private Sub CombPeca_AfterUpdate()
    'By JPaulo ® Maximo Access
    Dim I As Long
    Dim rs As DAO.Recordset
    Dim rsf As Recordset, frm As Form
    Set frm = Me
    Set rsf = Me.RecordsetClone

    'Este evita ter mais de um produto para o mesmo aluno.

    If Me.CodPeca <> 0 Then
       rsf.FindFirst "[CodPeca]= " & Me!CodPeca
       If Not rsf.NoMatch Then
          frm.Undo
          MsgBox "Você já adicionou esse peça, escolha outra.", vbCritical, "Sistema Educacional"
          Exit Sub
       End If
    End If

    '----Verifica o Sexo do individuo

    If Me.Parent.ListaNomeAluno.Column(3) = "M" And Me.CodPeca = 15 Then ' Maiô

       MsgBox "Você escolheu MAIÔ para um ALUNO, escolha SUNGA!", vbCritical, "Sistema Educacional"
       frm.Undo
       Me.CombPeca.Dropdown
    ElseIf Me.Parent.ListaNomeAluno.Column(3) = "F" And Me.CodPeca = 16 Then
       MsgBox "Você escolheu SUNGA para uma ALUNA, escolha MAIÔ!", vbCritical, "Sistema Educacional"
       frm.Undo
       Me.CombPeca.Dropdown
       Exit Sub
    End If
    O autor desta mensagem foi removido do fórum - Ver a mensagem
    avatar
    Beto Givoni
    VIP
    VIP

    Respeito às Regras 0%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1207
    Registrado : 04/01/2011

    Re: [Resolvido]Erro de compilação 461

    Mensagem  Beto Givoni em 25/4/2014, 14:40

    Olá, esse erro é porque esse campo CodPeca não existe, verifica o nome correto do controle.
    avatar
    João Ricardo
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 525
    Registrado : 20/01/2013

    Re: [Resolvido]Erro de compilação 461

    Mensagem  João Ricardo em 25/4/2014, 22:29

    Olá Beto, grato pelo retorno.

    Eu suspeitei que fosse isso, mas eu copiei e colei para evitar erro, além de observa várias vezes.

    O nome do controle é o mesmo nome dele na estrutura da tabela ou o nome do rótulo?

    Por que no código seguinte ele funciona bem?
    O autor desta mensagem foi removido do fórum - Ver a mensagem
    avatar
    João Ricardo
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 525
    Registrado : 20/01/2013

    Re: [Resolvido]Erro de compilação 461

    Mensagem  João Ricardo em 26/4/2014, 18:03

    Fala Beto!!

    Segue o link para download e análise do banco de dados

    Download

    Obrigado
    O autor desta mensagem foi removido do fórum - Ver a mensagem
    avatar
    João Ricardo
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 525
    Registrado : 20/01/2013

    Re: [Resolvido]Erro de compilação 461

    Mensagem  João Ricardo em 26/4/2014, 20:12

    .


    Última edição por João Ricardo em 26/4/2014, 20:51, editado 1 vez(es)
    avatar
    João Ricardo
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 525
    Registrado : 20/01/2013

    Erro de comparação

    Mensagem  João Ricardo em 26/4/2014, 20:50

    Meu amigo, mais uma vez muito obrigado!

    Funcionou perfeitamente, e creio que o mais importante, o aprendizado de como fazer.

    Como fazer para comparar dois grupos de códigos, como por exemplo:

    Escolho camiseta com código 1;
    As medidas da camiseta estão com os códigos entre 1 e 5 e de 19 a 22.
    Veja como fiz:



    Código:
     If Forms!frmDistribuicaoDoUniforme!sfrmDistribuicaoUniforme.Form!CodPeca = 1 And _
            Forms!frmDistribuicaoDoUniforme!sfrmDistribuicaoUniforme.Form!CodigoMedidaUniforme >= 1 And _
            Forms!frmDistribuicaoDoUniforme!sfrmDistribuicaoUniforme.Form!CodigoMedidaUniforme <= 5 Or _
            Forms!frmDistribuicaoDoUniforme!sfrmDistribuicaoUniforme.Form!CodigoMedidaUniforme >= 19 And _
            Forms!frmDistribuicaoDoUniforme!sfrmDistribuicaoUniforme.Form!CodigoMedidaUniforme <= 22 Then
            Me.cboMedida.SetFocus
            Me.cboMedida.Dropdown
        Else
            MsgBox "Você escolheu uma medida que não pertence a esta peça, escolha outra ou pesquisa nas orientações sobre as medidas do uniforme.", vbCritical, "Sistema Educacional"
            Me.Undo
            Forms!frmDistribuicaoDoUniforme!sfrmDistribuicaoUniforme.Form!CombPeca.SetFocus
            Forms!frmDistribuicaoDoUniforme!sfrmDistribuicaoUniforme.Form!CombPeca.Dropdown
        End If

    Deu erro qdo chegou no segundo grupo de comparação. O mais correto seria repetir os valores das medidas para camiseta e digitá-los todos no mesmo intervalo, sem interrupção como ficou acima?


    Grato novamente.
    O autor desta mensagem foi removido do fórum - Ver a mensagem
    avatar
    João Ricardo
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 525
    Registrado : 20/01/2013

    Re: [Resolvido]Erro de compilação 461

    Mensagem  João Ricardo em 27/4/2014, 02:18

    Ok! Deu certo.

    Troquei a linha de referência ao formulário e subformulário por uma variável do tipo Variant e deu certo, assim o código fica mais fácil de ser lido.

    Muito obrigado
    O autor desta mensagem foi removido do fórum - Ver a mensagem

      Data/hora atual: 24/9/2017, 01:24