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


4 participantes

    [Resolvido]Rotina ao percorrer todos os registos

    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Rotina ao percorrer todos os registos

    Mensagem  Assis 10/2/2011, 14:48

    Boa Tarde

    Esta rotina junta no campo "Ordenar" o campo "Data_Valor" + time.
    Assim
    10-02-2011 14:28:00
    10-02-2011 14:28:00
    10-02-2011 14:28:00

    Eu queria que nos registos seguinte desse:
    Assim
    10-02-2011 14:28:00
    10-02-2011 14:28:01
    11-02-2011 14:28:02
    11-02-2011 14:28:03

    Isto é no time punha mais um segundo.


    Private Sub Comando14_Click()
    Dim rst As Recordset
    Set rst = Me.Recordset
    rst.MoveFirst
    Do While Not rst.EOF
    With rst
    Me.Ordenar = Me.Data_Valor + Time
    .MoveNext
    End With
    Loop

    Set rst = Nothing
    MsgBox "Acerto dos Movimentos Terminado", vbQuestion, "Aviso"
    DoCmd.Close acForm, "Rotina"
    End Sub
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  criquio 10/2/2011, 15:24

    Talvez funcione assim:

    Right(Me.Ordenar, 2) = Right(Me.Data_Valor, 2) + 1


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Assis 10/2/2011, 16:40

    Assim não fica
    A data_valor 01-01-1900
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Alexandre Neves 10/2/2011, 21:08

    Boa noite, Assis

    Veja se dá certo:
    Private Sub Comando14_Click()
    Dim rst As Recordset
    Dim Tempo, Cont as integer
    Set rst = Me.Recordset
    tempo=Time: cont=0
    rst.MoveFirst
    Do While Not rst.EOF
    rst("Ordenar") = Me.Data_Valor + format(tempo,"hh:nn:") & format(format(tempo,"s")+cont,"00")
    cont=cont+1
    .MoveNext
    Loop

    Set rst = Nothing
    MsgBox "Acerto dos Movimentos Terminado", vbQuestion, "Aviso"
    DoCmd.Close acForm, "Rotina"
    End Sub

    Cumprimentos,
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Assis 10/2/2011, 21:47

    Para aqui
    Private Sub Comando14_Click()
    Dim rst As Recordset
    Dim Tempo, Cont as integer
    Set rst = Me.Recordset
    tempo=Time: cont=0
    rst.MoveFirst
    Do While Not rst.EOF
    rst("Ordenar") = Me.Data_Valor + format(tempo,"hh:nn:") & format(format(tempo,"s")+cont,"00")
    cont=cont+1
    .MoveNext
    Loop

    Set rst = Nothing
    MsgBox "Acerto dos Movimentos Terminado", vbQuestion, "Aviso"
    DoCmd.Close acForm, "Rotina"
    End Sub

    Obrigado, Assis
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Alexandre Neves 10/2/2011, 22:20

    Fica assim:
    Private Sub Comando14_Click()
    Dim rst As Recordset
    Dim Tempo, Cont as integer
    Set rst = Me.Recordset
    tempo=Time: cont=0
    rst.MoveFirst
    Do While Not rst.EOF
    rst("Ordenar") = Me.Data_Valor + format(tempo,"hh:nn:") & format(format(tempo,"s")+cont,"00")
    cont=cont+1
    rst.MoveNext
    Loop

    Set rst = Nothing
    MsgBox "Acerto dos Movimentos Terminado", vbQuestion, "Aviso"
    DoCmd.Close acForm, "Rotina"
    End Sub
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Assis 10/2/2011, 22:31

    Run time error 13
    Type mismatch


    Private Sub Comando14_Click()
    Dim rst As Recordset
    Dim Tempo, Cont as integer
    Set rst = Me.Recordset
    tempo=Time: cont=0
    rst.MoveFirst
    Do While Not rst.EOF
    rst("Ordenar") = Me.Data_Valor + format(tempo,"hh:nn:") & format(format(tempo,"s")+cont,"00")
    cont=cont+1
    rst.MoveNext
    Loop

    Set rst = Nothing
    MsgBox "Acerto dos Movimentos Terminado", vbQuestion, "Aviso"
    DoCmd.Close acForm, "Rotina"
    avatar
    Convidad
    Convidado


    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Convidad 10/2/2011, 22:34

    Assis Convinha dizer-nos se o campo "Ordenar" é texto ou data na tabela.

    Alexandre, não falta aí um rst.Edit e um rst.Update ?
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Assis 10/2/2011, 22:37

    O campo ordenar é Data/Hora "31-12-2001 13:03:47"
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Alexandre Neves 10/2/2011, 22:51

    Obrigado, boa lembrança, Ricardo

    Isto de fazer de memória, a correr e sem testar
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  JPaulo 13/2/2011, 15:07

    teste;

    Dim rst As Recordset
    Dim Tempo, Cont As Integer

    Set rst = CurrentDb.OpenRecordset("select * from tblExemplo Order By ID ASC")

    Tempo = Time()
    Cont = 0

    If rst.RecordCount = 0 Then Exit Sub
    rst.MoveLast
    rst.MoveFirst

    Do While Not rst.EOF
    rst.Edit
    rst.Fields("Ordenar").Value = Me.Data_Valor & " " & Format(Tempo, "hh:nn") & ":" & Format(Format(Tempo, "s") + Val(Cont), "00")
    Cont = Cont + 1
    rst.Update
    rst.MoveNext
    Loop

    Set rst = Nothing
    MsgBox "Acerto dos Movimentos Terminado", vbQuestion, "Aviso"
    DoCmd.Close acForm, "Rotina"


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Rotina ao percorrer todos os registos Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Rotina ao percorrer todos os registos Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Rotina ao percorrer todos os registos Folder_announce_new Instruções SQL como utilizar...
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Assis 13/2/2011, 15:37

    Olá JPaulo

    Continua a não dar, mas por aquilo que deu para perbeber é que para quando chega ao segundo "59"

    http://dl.dropbox.com/u/8169944/Rotina%20Assis.mdb

    Obrigado



    .................................................................................
    *** Só sei que nada sei ***
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  JPaulo 13/2/2011, 17:14

    Após testar a 100%


    Dim rst As Recordset
    Dim Tempo, Cont As Integer
    Set rst = Me.Recordset

    Tempo = Time()
    Cont = 0

    If rst.RecordCount = 0 Then Exit Sub
    rst.MoveLast
    rst.MoveFirst

    Do While Not rst.EOF
    rst.Edit
    rst.Fields("Ordenar").Value = Me.Data_Valor & " " & Format(Tempo, "hh:nn") & ":" & Format(Format(Tempo, "s") + Val(Cont), "00")
    Cont = Cont + 1
    rst.Update

    'Se o Ordenar terminar em 59, acrescenta 1 minuto e inicia os segundos a zero

    If Right(Me.Ordenar, 2) = 59 Then
    Tempo = Format(DateAdd("n", 1, Me.Ordenar), "hh:nn") & ":" & "00"
    Cont = 0
    End If

    rst.MoveNext
    Loop

    Set rst = Nothing
    MsgBox "Acerto dos Movimentos Terminado", vbQuestion, "Aviso"
    Me.Recalc
    'DoCmd.Close acForm, "Rotina"



    Observação:

    O amigo Assis continua a colocar nos nomes dos campos, com palavras reservadas do Access, como por exemplo DATA, um dia terá muitas dores de cabeça e jamais irá descobrir a origem.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Rotina ao percorrer todos os registos Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Rotina ao percorrer todos os registos Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Rotina ao percorrer todos os registos Folder_announce_new Instruções SQL como utilizar...
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Assis 13/2/2011, 17:34

    Olá JPaulo

    Observação: Tem razão quanto ao campo "Data" mas esta BD foi a minha primeira experiência em Access, e agora tenho receio de alterar pois tem já muitos dados.

    Obrigado pela rotina, a anterior chegava ao segundo 59 e ficava fora da hora.
    Esta perfeita.
    Obrigado


    .................................................................................
    *** Só sei que nada sei ***
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  JPaulo 13/2/2011, 18:13

    Obrigado pelo retorno Assis.

    A chuva faz com que fiquemos em casa num Domingo, sorte para uns e azar para outros... Embarassed


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Rotina ao percorrer todos os registos Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Rotina ao percorrer todos os registos Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Rotina ao percorrer todos os registos Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Rotina ao percorrer todos os registos Empty Re: [Resolvido]Rotina ao percorrer todos os registos

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 07:54