MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    Função para popular Formulário Contínuo usando DAO

    chsestrem
    chsestrem
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 463
    Registrado : 01/03/2010

    Função para popular Formulário Contínuo usando DAO Empty Função para popular Formulário Contínuo usando DAO

    Mensagem  chsestrem em 19/3/2013, 22:15

    Código:

    '***********************************************************
    'Função para popular campos em subformulário desacoplado ou formulários contínuos
    'usando DAO.Recordset
    '
    'By Charles Sestrem
    'chsestrem@gmail.com
    'Data Criação 01/01/2013
    '
    'Este procedimento apesar de ser para Form desacoplado, mantém o banco aberto
    'pois o mesmo depende do recordset para se manter ativo.
    '
    'Requisitos necessários:
    '1 - O subformulário ou formulário não deverá ter Fonte de Registro na Aba "Dados"
    '
    '2 - O subformulário ou formulário contínuo devem ter na propriedade "Outra",
    'no elemento "Nome", os nomes dos campos idênticos ao da tabela
    '
    '3 - O Formulário ou subformulário não deverá ter campos invisíveis
    'Se tiver campos invisíveis deverá ser acrescentado um IF.
    '
    'Exemplo de uso no evento ao carregar
    'Call PopulaForm(Me,"Minha_Tabela")
    '
    'Exemplo de uso para uma Combo de pesquisa  e um Subformulário
    '
    'strsql = ""
    'strsql = "SELECT * FROM Tabela WHERE id = " & 'Me.CmbPesquisa.Column(0) & "; "
    'Call PopulaForm(Forms!Frm_Principal!Sub_Formulário.Form, strsql)
    '
    '

    Public Function PopulaForm(Frm As Form, StrTabela As String)

    Dim i As Integer
    Dim c As control

    On Error Resume Next

    Set rs = CurrentDb.OpenRecordset(StrTabela, dbOpenDynaset)

    For Each c In Frm.Controls

    For i = 1 To rs.Fields.Count

    If c.Name = rs.Fields(i - 1).Name Then

    c.ControlSource = rs.Fields(i - 1).Name

    Set Frm.Recordset = rs

    End If

    Next i

    Next c

    End Function

    Sds,


    .................................................................................
    Charles Sestrem
    http://www.vbabit.com.br
    Fernando Bueno
    Fernando Bueno
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2097
    Registrado : 13/04/2012

    Função para popular Formulário Contínuo usando DAO Empty Re: Função para popular Formulário Contínuo usando DAO

    Mensagem  Fernando Bueno em 1/6/2013, 09:11

    Muito bom!


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    Função para popular Formulário Contínuo usando DAO 16rzeq

      Data/hora atual: 4/12/2020, 11:10