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]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  Fabio Araujo 3/10/2013, 20:04

    Boa tarde a todos.

    Sou novo aqui e no Access e estou desenvolvendo um banco para o movimento de Igreja que participo (Movimento de Cursilhos).

    Estou desenvolvendo um formulário para cadastro de membros e existe nele uma caixa de combinação (Combinação91) que busca dados em uma tabela (Tipo_Cursilho) onde selecione uma opção (Ex.: Cursilho Masculino Adulto).

    Neste formulário tem também uma caixa de texto (Texto95) onde o usuário digita um número entre 0 e 999.

    Gostaria de uma ajuda em:

    1 - Na caixa de texto tem 03 dígitos, mas ela obriga digitar os 03, ou seja, se quiser digitar um valor menor que 100 tenho de colocar o "0" (zero) antes ex.: 056, como corrigir de tal maneira que possa digitar 12 e ele aceite?

    2 - Existe um campo na tabela aos qual este formulário atende chamado "Cursilho" e gostaria que ai clicar em adicionar registro, este campo receba a concatenação do Campo de Texto "Texto95", mais um espaço e a opção selecionada da caixa de combinação (Combinação91).

    3 - Ao clicar no botão de inserir, ele até adiciona os dados, mas não consigo adicionar outro, tenho de excluir para que ele alimente a tabela, como resolver?

    Agradeço de antemão a todos e conto com a ajuda de todos.

    Fabio
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  good guy 3/10/2013, 21:34

    Olá Fabio,

    No seu formulário, pode ser que tenha uma máscara de entrada para este campo, retire a mesma do campo pelo modo design, propriedades do campo.
    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Obrigado

    Mensagem  Fabio Araujo 4/10/2013, 15:21

    Obrigado good guy, mas eu realmente coloquei esta mascara porque necessito que seja gravado na tabela com o símbolo ordinal (°) e acredito que para isso tenha de colocar a máscara 000 º, existe alguma outra opção?

    Quanto aos ítens 2 e 3, alguma idéia?

    abraços e obrigado pela atenção.
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de text em campo de tabela

    Mensagem  good guy 4/10/2013, 18:36

    Olá Fabio,


    (1) Dúvida n.º 1:

    Tente através de código no evento Exit do seu campo:

    Exemplo:


    If Not IsNull(SeuCampo) and Len(SeuCampo) = 3 Then
    Dim mascEntrada As String
    mascEntrada = Format(SeuCampo,"000") & ".º"
    Forms!CONTROLEORDEMDESERVIÇO!MATRÍCULA.InputMask = "" & mascEntrada & ""

    ElseIf Not IsNull(SeuCampo) and Len(SeuCampo) = 2 Then
    mascEntrada = Format(SeuCampo,"00") & ".º"
    Forms!CONTROLEORDEMDESERVIÇO!MATRÍCULA.InputMask = "" & mascEntrada & ""
    Else
    Exit Sub
    End If

    (2) Dúvida N.º 2 Concatenação:
    Existe um campo na tabela aos qual este formulário atende chamado "Cursilho" e gostaria que ai clicar em adicionar registro, este campo receba a concatenação do Campo de Texto "Texto95", mais um espaço e a opção selecionada da caixa de combinação (Combinação91).

    Dim sCampo1 As String
    Dim sCampo2 As String

    sCampo1 = Forms!NomedoForm!Texto95
    sCampo2 = Combinação91.Column(0)

    CampoDesconhecido = sCampo1 & "" & sCampo2

    (3) Dúvida N.º 3

    3 - Ao clicar no botão de inserir, ele até adiciona os dados, mas não consigo adicionar outro, tenho de excluir para que ele alimente a tabela, como resolver?

    Deixe o formulário desacoplado a tabela ou consulta e faça o seguinte para inserir os dados pelo botão de inserir evento Click:

    Dim strSQL As String

    sCampo1=Forms!NomedoForm!txtCampo1
    sCampo2=Forms!NomedoForm!txtCampo2
    sCampo3=Forms!NomedoForm!txtCampo3


    strSQL = "INSERT INTO SuaTabela(campo1,campo2,campo3) VALUES('" & sCampo1 & "', '" & sCampo2 & "','" & sCampo3 & "')
    CurrentDb.Execute strSQL

    ME.Recordsource = "SELECT * FROM SuaTabela"


    Última edição por good guy em 8/10/2013, 20:20, editado 2 vez(es)
    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Erro de compilação

    Mensagem  Fabio Araujo 4/10/2013, 18:55

    Good Guy, obrigado novamente, mas peço desculpas porque não entendo nada de VBA, mas adicionei o que me mandou e apresentou erro de compilação mostrando a mensagem de erro: "Declaração duplicada no escopo Atual" e marcou as linhas em destaque de cor:

    Private Sub Texto95_Exit(Cancel As Integer)
    If IsNull(SeuCampo) And Len(Texto95) = 3 Then
    Dim mascEntrada As String
    mascEntrada = Format(Texto95, "000") & ".º"
    Forms!CONTROLEORDEMDESERVIÇO!MATRÍCULA.InputMask = "" & mascEntrada & ""

    ElseIf IsNull(Texto95) And Len(Texto95) = 2 Then
    Dim mascEntrada As String
    mascEntrada = Format(Texto95, "00") & ".º"
    Forms!CONTROLEORDEMDESERVIÇO!MATRÍCULA.InputMask = "" & mascEntrada & ""
    Else
    Exit Sub
    End If
    End Sub

    Desculpe estar sendo chato...mas sou meio leigo.....

    abs e obrigado pela atenção
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  good guy 4/10/2013, 18:58

    Desculpe aí Fábio,

    Retire a declaração da variavel repetida:

    Private Sub Texto95_Exit(Cancel As Integer)
    Dim mascEntrada As String

    If Not IsNull(SeuCampo) And Len(Texto95) = 3 Then
    mascEntrada = Format(Texto95, "000") & ".º"
    Forms!CONTROLEORDEMDESERVIÇO!MATRÍCULA.InputMask = "" & mascEntrada & ""

    ElseIf Not IsNull(Texto95) And Len(Texto95) = 2 Then
    mascEntrada = Format(Texto95, "00") & ".º"
    Forms!CONTROLEORDEMDESERVIÇO!MATRÍCULA.InputMask = "" & mascEntrada & ""
    Else
    Exit Sub
    End If
    End Sub

    Nota: Corrigi os IF's acima.


    Última edição por good guy em 8/10/2013, 20:19, editado 1 vez(es)
    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Erro de Sintaxe

    Mensagem  Fabio Araujo 8/10/2013, 15:28

    Amigo, eu agradeço sua ajuda e desculpe a demora, tive de viajar no FDS a trabalho e só pude tentar as soluções hoje e já adianto que eu sou meio ignorante nisso, mas segue:

    Na solução 2 esta dando erro na sintaxe de cor diferente:

    Dim sCampo1 As String
    Dim sCampo2 As String

    sCampo1 = Forms!NomedoForm!Texto95
    sCampo2 = Combinação91.Column(0)

    CampoDesconhecido = sCampo1 & "" & sCampo2

    Pergunto se tenho que substituir o NomedoForm pelo nome do Formulário que criei? se sim fiz isso e não funcionou (sCampo1 = Forms!Cadastro de Cursilhista!Texto95), lembrando que adicionei esta solução no evento do botão "Inserir_Associado" em "ao clicar".


    Quanto a solução 3, como faço para desacoplar o formulário a tabela? e na expressão abaixo, eu terei de fazer uma para cada campo do formulário?

    sCampo1=Forms!NomedoForm!txtCampo1

    Obrigado Good Guy e desculpe a minha ignorância....

    abs saúde e Paz...
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  good guy 8/10/2013, 15:36

    Olá Fabio,

    (1)Coloque entre chaves o nome de seu formulário. Sempre que o nome do formulário não estiver concatenado, proceda dessa forma:

    sCampo1 = Forms![Cadastro de Cursilhista]!Texto95


    (2) Sim, você terá que fazer para cada campo do formulário.
    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Campo Matrícula - incremental

    Mensagem  Fabio Araujo 8/10/2013, 15:54

    Good Guy, valeu pela ajuda, mas se desacoplar o formulário é retirar de cada campo o correspondente na tabela (Fonte de controle) fico com uma dúvida, tenho um campo matrícula que é chave primária e incremental, como proceder na hora de inserir os dados?

    Se quiser e abusando da sua boa vontade, posso te passar o banco que criei...

    abs.

    Fabio
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  good guy 8/10/2013, 16:06

    Olá Fábio,

    Em nenhum momento falei sobre desacoplar o formulário da tabela ou falei? Posta aí seu bd. Mas receio que estamos nos desviando do ponto principal que é sobre as máscaras.
    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty BCO

    Mensagem  Fabio Araujo 8/10/2013, 16:33

    Good Guy, segue meu BD...

    Eu perguntei sobre desacoplar pq vc havia dito isso no início na solução 3, veja se estou fazendo algo errado.

    Obrigado meu amigo.

    abs.

    Fabio
    Anexos
    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela AttachmentDados_MCCDCSJ.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (427 Kb) Baixado 30 vez(es)
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  good guy 8/10/2013, 17:41

    Olá Fábio,

    Existem vários pequenos erros de codificação. Alguns são básicos, como declarar variáveis. Em sua cláusula de inserção, existem erros de sintaxe, vírgulas demais. Mais atenção ao codificar, OK? Estou fazendo a arrumação aqui. Vai analisando os erros e praticando aí. Valew?

    Algumas alterações:

    (1)
    Private Sub Texto95_AfterUpdate()    'Texto95 você pode alterar para um nome mais sugestivo como txtNum ou parecido para ser facimente identificado
    Dim mascEntrada As String

    If Not IsNull(Texto95) And Len(Texto95) = 3 Then
    mascEntrada = Format(Texto95, "000") & ",º"
    Forms!CadastrodeCursilhista!Texto95.InputMask = "" & mascEntrada & ""

    ElseIf Not IsNull(Texto95) And Len(Texto95) = 2 Then
    mascEntrada = Format(Texto95, "00") & ",º"
    Forms!CadastrodeCursilhista!Texto95.InputMask = "" & mascEntrada & ""
    Else
    Exit Sub
    End If
    End Sub

    (2)
    Fiz inserções com as primeiras três variáveis e inseriu corretamente.

    Private Sub Inserir_Associado_Click()
    'On Error Resume Next
    Dim sN_Cur As String
    Dim sTp_Cur As String
    Dim CUR As String
    Dim strSQL As String
    Dim Num As Integer
    Dim sCampo1 As String
    Dim sCampo2 As String
    Dim sCampo3 As String
    Dim sCampo4 As String
    Dim sCampo5 As String
    Dim sCampo6 As String
    Dim sCampo7 As String
    Dim sCampo8 As String
    Dim sCampo9 As String
    Dim sCampo10 As String
    Dim sCampo11 As String
    Dim sCampo12 As String
    Dim sCampo13 As String
    Dim sCampo14 As String
    Dim sCampo15 As String
    Dim sCampo16 As String
    Dim sCampo17 As String
    Dim sCampo18 As String
    Dim sCampo19 As String
    Dim sCampo20 As String
    Dim sCampo21 As String
    Dim sCampo22 As String

    sN_Cur = Nz(Forms!CadastrodeCursilhista!Texto95)
    sTp_Cur = Nz(Combinação91.Column(0))

    CUR = sN_Cur & "" & sTp_Cur

    NomedoCampo = CUR   'Crie um campo à parte no seu formulário para receber sua variável CUR

    sCampo1 = Nz(Forms!CadastrodeCursilhista!Nome)
    sCampo2 = Nz(Forms!CadastrodeCursilhista!Logradouro)
    sCampo3 = Nz(Forms!CadastrodeCursilhista!Sexo.Column(0))
    sCampox = Nz(Forms!CadastrodeCursilhista!NomedoCampo)    

    '
    '

    strSQL = "INSERT INTO Associado(Nome,Logradouro,Sexo) VALUES('" & sCampo1 & "', '" & sCampo2 & "','" & sCampo3 & "')"
    CurrentDb.Execute strSQL

    MsgBox "Inserido com sucesso", vbInformation, "Cadastro de Cursilhista"

    Me.RecordSource = "SELECT * FROM Associado"

    End Sub


    Teste sua cláusula de inserção acima aos poucos, pois está dando erro na inserção de todas as variáveis em uma só tacada. Insira três valores, depois cinco até chegar vinte e duas variáveis. Quando você terminar de realizar os testes, delete o campo matrícula. Feche o bd e depois crie novamente o campo Matricula na tabela de origem (Associado).

    Nota: Verifique se estão na mesma ordem de colocação os campos da tabela Associado com os campos na cláusula INSERT.
    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Não insere

    Mensagem  Fabio Araujo 8/10/2013, 22:11

    Good Guy, desculpe a minha ignorância, estou seguindo seus conselhos e trabalhando de 03 em 03 registros, mudei a estrutura para facilitar excluindo a concatenação e gravando direto no banco (no relatório concatenarei para facilitar o entendimento acrescentando o º), e coloquei o script abaixo no botão inserir ao clicar:

    Private Sub Inserir_Associado_Click()
    'On Error Resume Next
    Dim strSQL As String
    Dim Num As Integer
    Dim sCampo1 As String
    Dim sCampo2 As String
    Dim sCampo3 As String
    Dim sCampo4 As String
    Dim sCampo5 As String
    Dim sCampo6 As String
    Dim sCampo7 As String
    Dim sCampo8 As String
    Dim sCampo9 As String
    Dim sCampo10 As String
    Dim sCampo11 As String
    Dim sCampo12 As String
    Dim sCampo13 As String
    Dim sCampo14 As String
    Dim sCampo15 As String
    Dim sCampo16 As String
    Dim sCampo17 As String
    Dim sCampo18 As String
    Dim sCampo19 As String
    Dim sCampo20 As String
    Dim sCampo21 As String

    sCampo1 = Forms![Cadastro de Cursilhista]!Nome
    sCampo2 = Forms![Cadastro de Cursilhista]!Dt_Nascimento
    sCampo3 = Forms![Cadastro de Cursilhista]!Sexo.Column(0)


    strSQL = "INSERT INTO Associado(Nome,Dt_Nascimento,Sexo) VALUES('" & sCampo1 & "', '" & sCampo2 & "','" & sCampo3 & "')"
    CurrentDb.Execute strSQL

    MsgBox "Inserido com sucesso", vbInformation, "Cadastro de Cursilhista"

    Me.RecordSource = "SELECT * FROM Associado"

    End Sub

    Mas ele não grava no banco...mudei o Nz(Forms!CadastrodeCursilhista!Nome), pois estava dando erro na compilação.

    alguma sugestão?
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  good guy 8/10/2013, 22:52

    Olá Fabio,

    É como eu disse, tente inserir de três em três. Quanto a função Nz, você vai verificar que se o campo estiver vazio ou nulo, vai acusar erro e você não conseguir inserir dados. Consegui normalmente inserir os três primeiros com a função Nz.
    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Obrigado

    Mensagem  Fabio Araujo 11/10/2013, 13:30

    Good Guy, funcionou, agradeço sua ajuda, desculpe a demora, mas só mexo quando tenho tempo aqui na empresa.

    Mas gostaria de sua ajuda em colocar uma opção para que verificasse se o CPF já existe e exibisse nome e matrícula do usuário já cadastrado, conhece?
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  good guy 11/10/2013, 14:23

    Olá Fábio,


    Geralmente se faz pesquisa usando a função Dlookup. Conhece? Através de uma caixa de texto e um botão.


    Private Sub cmdProcuraCPF_Click()    'Nome do botão

    Dim sCPF As String
    Dim strProcura As String

    sCPF = Nz(txtCPF)     'Nome da caixa de texto

    strProcura = Nz(DLookup("CPF","Associado","CPF = '" & sCPF & "'"))

    If Not IsNull(txtCPF) Then
      If sCPF = strProcura Then
        MsgBox "Este CPF já existe !!!",vbInformation,"Pesquisa CPF"
          Forms!CadastrodeCursilhista!Nome = Dlookup("Nome","Associado","CPF = '" & sCPF & "'")
          Forms!CadastrodeCursilhista!CPF = Dlookup("CPF","Associado","CPF = '" & sCPF & "'")

      Else
        MsgBox "Este CPF não está cadastrado !!!", vbInformation,"Pesquisa CPF"
      End If
    End If

         

    End Sub
    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Feito...valeu

    Mensagem  Fabio Araujo 11/10/2013, 19:03

    Obrigado Good Guy consegui, mas realizei uma alteração para mostrar na MsgBox os dados, veja:

    Private Sub Comando9_Click()
    Dim RegistoRepetido As Variant
    Dim User As String
    Dim Mat As String

    RegistoRepetido = DLookup("[CPF]", "tblCadastro", "[CPF] ='" & Me.txtCPF & "'")
    If Not IsNull(RegistoRepetido) Then
    User = DLookup("Nome", "tblCadastro", "CPF = '" & Me.txtCPF & "'")
    Mat = DLookup("Matricula", "tblCadastro", "CPF = '" & Me.txtCPF & "'")
    MsgBox "O CPF " & Me.txtCPF & " do Cursilhista " & User & " matrícula " & Mat & " já est Cadastrado ", vbInformation
    DoCmd.CancelEvent
    Me.Undo
    Me.txtCPF.SetFocus
    Else
    DoCmd.Save
    MsgBox "Cadastrado com sucesso", , "Concluido"

    DoCmd.GoToRecord , , acNewRec
    End If
    End Sub


    Te agradeço a ajuda...mas para não perder o costume he he he...gostaria de neste mesmo formulário alterar dados de alguém já cadastrado, para isso gostaria de digitar a matrícula e carregar os dados cadastrados, tem uma luz de como fazer?

    abraços e valeu pela disponibilidade..
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  good guy 11/10/2013, 20:26

    Olá Fabio,

    Cuidado com as declarações de variáveis usando do tipo Variant porque consomem muita memória do computador e minimiza o desempenho do banco. Explicações com mais detalhes veja aqui. No teu caso prefira do tipo String.

    http://www.vbweb.com.br/dicas_visual.asp?Codigo=149

    Para localizar o registro pela matrícula, você pode lançar mão do assistente do Access pela inclusão de uma combo ou com o código abaixo:

    Private Sub cmdProcuraCPF_Click()    'Nome do botão

    Dim sCPF As String
    Dim strProcura As String
    Dim filtro As String

    sCPF = Nz(txtCPF)     'Nome da caixa de texto

    strProcura = Nz(DLookup("CPF","Associado","CPF = '" & sCPF & "'"))

    If Not IsNull(txtCPF) Then
     If sCPF = strProcura Then
       
         Forms!CadastrodeCursilhista!Nome = DLookup("Nome", "Associado", "CPF = '" & sCPF & "'")
         Forms!CadastrodeCursilhista!CPF = DLookup("CPF", "Associado", "CPF = '" & sCPF & "'")      
         ........
         
     Else
       MsgBox "Este CPF não está cadastrado !!!", vbInformation,"Pesquisa CPF"
     End If
    End If

    Para alterar os dados dos campos do seu formulário. Adapte o código abaixe para os campos do mesmo no evento BeforeUpdate.

    Private Sub CPF_BeforeUpdate(Cancel As Integer)
    On Error Resume Next
       Dim strMsg As String
       Dim strTitle As String
       Dim intRetVal As Integer
       Dim strSQL As String
       Dim sCPF As String
       Dim sNome As String
       
       strMsg = "O valor do campo CPF foi alterado. Atualizar?"
       strTitle = "Atualizar Campo?"
       intRetVal = MsgBox(strMsg, vbYesNoCancel + vbQuestion + vbDefaultButton2, strTitle)
       
       sCPF = Nz(CPF)
       sNome = Nz(Forms!CadastrodeCursilhista!Nome)
       Select Case intRetVal
           Case vbYes
               strSQL = "UPDATE Associado SET CPF = '" & sCPF & "' WHERE Nome = '" & sNome & "'"
               CurrentDb.Execute strSQL
           Case vbCancel      'Usuário Selecionou Cancelar
               SendKeys "{esc}"
               Cancel = True
           Case vbNo    'Usuário Selecionou Não
               Cancel = True
       End Select
    End Sub
    avatar
    Fabio Araujo
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 40
    Registrado : 03/10/2013

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty [Resolvido] funcionou

    Mensagem  Fabio Araujo 21/10/2013, 12:41

    Good Guy, desculpe a demora, mas estava viajando a trabalho.

    Esta rodando perfeitamente, estou agora criando um outro formulário para cadastro de candidatos, se tiver alguma dúvida posto aqui.

    Obrigado pela ajuda.
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  good guy 21/10/2013, 16:28

    Obrigado Fabio pelo retorno. Com prazer todos aqui do forum agradecem.

    Conteúdo patrocinado


    [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela Empty Re: [Resolvido]Concatenar valos de caixa de combinação e caixa de texto em campo de tabela

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 15/5/2024, 14:19