MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    Inserir numero em um campo de tabela

    Compartilhe

    Tsa.alves
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 26/08/2015

    Inserir numero em um campo de tabela

    Mensagem  Tsa.alves em Qua 26 Ago 2015, 13:01

    Bom dia Galera!!


    Estou aprendendo a programar agora e tenho uma duvida?

    estou fazendo um controle de refeições onde vou coletar via código de barras a entrada das pessoas no restaurante, E quando é realizado a coleta do código de barras é travado o HR_Coleta e com isso fiz alguns parâmetro para me dar o tipo de refeição: 1 – Desjejum; 2 – Almoço; 3 - Janta; 4 – Ceia e 5 - Café da Tarde.

    Crie uma tabela – Tb_Coleta, com os atributos Cod_Coleta, Data, Cracha, Hr_Coleta, Cod_Refeicao
    Crie uma tabela – Tb_Refeicao, com os atributos Cod_Refeicao e as relacionei (Em Negrito)

    Fiz uma programação para os parâmetros, só que não esta inserindo digito do tipo de refeição no campo da Tb_Coleta – Cod_Refeicao automaticamente, poderia me ajudar. Não sei o que estou fazendo de errado, so quero que o digito seja inserido na Tb_Coleta – Cod_Refeicao

    Option Compare Database
    Sub Insert_Entrada(Cod_Coleta, Data, Hr_Coleta, Cracha, Cod_Refeicao)
    End Sub
    Dim Cxs As Double
    Dim Rs As ADODB.Recordset
    Set Rs = New ADODB.Recordset
    Dim Dt As Date
    Rs.CursorType = adOpenKeyset
    Rs.LockType = adLockOptimistic
    Rs.Open "Select * from Tb_Coleta ", adoMycon
    Rs.AddNew

    Rs!Cracha = Cracha
    Rs!Hr_Coleta = Hr_Coleta
    Rs!QUANT = 1
    Rs!Data = Data

    If Hr_Coleta >= #1:40:00 AM# And Hr_Coleta <= #10:00:00 AM# Then
    Rs!Cod_Refeicao = 1
    Else
    If Hr_Coleta >= #10:01:00 AM# And Hr_Coleta <= #1:39:00 PM# Then
    Rs!Cod_Refeicao = 2
    Else
    If Hr_Coleta >= #1:40:00 PM# And Hr_Coleta <= #4:58:00 PM# Then
    Rs!Cod_Refeicao = 5
    Else
    If Hr_Coleta >= #4:59:00 PM# And Hr_Coleta <= #10:00:00 PM# Then
    Rs!Cod_Refeicao = 3
    Else
    If Hr_Coleta >= #10:01:00 PM# And Hr_Coleta <= #11:59:00 PM# Then
    Rs!Cod_Refeicao = 4
    Else
    MsgBox ("Refeição não encontrada na base")
    End If
    End If
    End If
    End If
    End If
    Rs.Update
    Rs.Close
    Set Rs = Nothing

    End Sub

    Julio Lustosa
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 151
    Registrado : 23/02/2011

    Re: Inserir numero em um campo de tabela

    Mensagem  Julio Lustosa em Qua 26 Ago 2015, 13:18

    Bom dia!

    Retire do seu código os caracteres AM e o PM, à não ser que eles estejam gravados na sua tabela desta forma. Se estiverem, acredito que eles sejam do tipo texto. Se forem, altere também os caracteres "#" por aspas duplas "".

    Exemplo:

    Campo do tipo data: If Hr_Coleta >= #1:40:00# And Hr_Coleta <= #10:00:00# Then

    Campo do tipo texto: If Hr_Coleta >= "1:40:00 AM" And Hr_Coleta <= "10:00:00 PM" Then

    Se não resolver, você pode mandar imagens de como este campo está configurado na tabela. Mas para esclarecer dúvidas.

    Abraços.

    Julio Lustosa
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 151
    Registrado : 23/02/2011

    Re: Inserir numero em um campo de tabela

    Mensagem  Julio Lustosa em Qua 26 Ago 2015, 13:21

    Bom dia!

    Primeiro seu If está totalmente errado:

    Código:
    If Hr_Coleta >= #1:40:00 AM# And Hr_Coleta <= #10:00:00 AM# Then
        Rs!Cod_Refeicao = 1
        ElseIf Hr_Coleta >= #10:01:00 AM# And Hr_Coleta <= #1:39:00 PM# Then
              Rs!Cod_Refeicao = 2
              ElseIf Hr_Coleta >= #1:40:00 PM# And Hr_Coleta <= #4:58:00 PM# Then
                   Rs!Cod_Refeicao = 5
                   ElseIf Hr_Coleta >= #4:59:00 PM# And Hr_Coleta <= #10:00:00 PM# Then
                        Rs!Cod_Refeicao = 3
                        ElseIf Hr_Coleta >= #10:01:00 PM# And Hr_Coleta <= #11:59:00 PM# Then
                             Rs!Cod_Refeicao = 4
                             Else
                                  MsgBox ("Refeição não encontrada na base")
    End If

    Retire também do seu código os caracteres AM e o PM, à não ser que eles estejam gravados na sua tabela desta forma. Se estiverem, acredito que eles sejam do tipo texto. Se forem, altere também os caracteres "#" por aspas duplas "".

    Exemplo:

    Campo do tipo data: If Hr_Coleta >= #1:40:00# And Hr_Coleta <= #10:00:00# Then

    Campo do tipo texto: If Hr_Coleta >= "1:40:00 AM" And Hr_Coleta <= "10:00:00 PM" Then

    Se não resolver, você pode mandar imagens de como este campo está configurado na tabela. Mas para esclarecer dúvidas.

    Abraços.

    Tsa.alves
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 26/08/2015

    Re: Inserir numero em um campo de tabela

    Mensagem  Tsa.alves em Qua 26 Ago 2015, 13:37

    Julio, obrigado!!

    Porem todas as vezes que tento retirar o AM e PM, por o tido do dados é do tipo data/hora ele volta a ser adicionado automaticamente.

    poderia me ajudar com essa programação, estou quebrando a cabeça a semanas.

    vou te enviar o meu banco.

    Tsa.alves
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 26/08/2015

    Re: Inserir numero em um campo de tabela

    Mensagem  Tsa.alves em Qua 26 Ago 2015, 14:16

    Segue banco zipado

      Data/hora atual: Qui 08 Dez 2016, 00:05