galera, estava precisando de uma ajuda rapida. O alexandre_neves aqui do forum escreveu esse codigo pra mim. O codigo esta perfeito, mas precisava adicionar uma variavel. eu queria q sempre q o codigo fosse iniciado, ele apagasse todos os dados do campo "prazos". O problema e o seguinte; quando uma contagem e reiniciada, por exemplo, o campo prazos continua com o valor antigo ate q um novo valor possa ser sobscrito. dessa forma ele mantem o valor antigo ate q isso aconteca, oq nao e legal. Entao queria q o codigo sempre q fosse iniciado apagasse todos os valores da coluna prazos, e ai sim atualizasse com os novos valores. Alexandre, piloto ou alguem poderia dar uma ajuda?
Sub ActualizaPrazos()
'criada por Alexandre Neves www.esnips.com\web\alexandreneves
'em 2012-10-27
'para gustavovon
'do fórum MaximoAccess
Dim Rst As DAO.Recordset
Set Rst = CurrentDb.OpenRecordset("Table1")
Do While Not Rst.EOF
Rst.Edit
Select Case Rst("Status")
Case "Aguard. PRAZO RECURSAL"
If DateDiff("d", Rst("Ultima Alteração"), Date) > 30 Then Rst("Prazo") = "Vencido"
Case "AGUARD. PRAZO ESPECIAL"
If DateDiff("d", Rst("Ultima Alteração"), Date) > 15 Then Rst("Prazo") = "Vencido"
Case "EM PROC. DE INSCRIÇÃO EM D.A."
If DateDiff("d", Rst("Ultima Alteração"), Date) > 45 Then Rst("Prazo") = "Vencido"
Case "AGUARD. PRAZO AJUR"
If DateDiff("d", Rst("Ultima Alteração"), Date) > 120 Then Rst("Prazo") = "Vencido"
Case Else
If IsNull(Rst("Ultima Alteração")) Then
Rst("Prazo") = "S/ PRAZO"
ElseIf IsDate(Rst("Ultima Alteração")) Then
If DateDiff("d", Rst("Ultima Alteração"), Date) > 360 Then
Rst("Prazo") = "360 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 330 Then
Rst("Prazo") = "330 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 300 Then
Rst("Prazo") = "300 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 270 Then
Rst("Prazo") = "270 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 240 Then
Rst("Prazo") = "240 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 210 Then
Rst("Prazo") = "210 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 180 Then
Rst("Prazo") = "180 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 150 Then
Rst("Prazo") = "150 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 120 Then
Rst("Prazo") = "120 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 90 Then
Rst("Prazo") = "90 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 60 Then
Rst("Prazo") = "60 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 45 Then
Rst("Prazo") = "45 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 30 Then
Rst("Prazo") = "30 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 15 Then
Rst("Prazo") = "15 dias"
End If
End If
End Select
Rst.Update
Rst.MoveNext
Loop
Set Rst = Nothing
End Sub
Sub ActualizaPrazos()
'criada por Alexandre Neves www.esnips.com\web\alexandreneves
'em 2012-10-27
'para gustavovon
'do fórum MaximoAccess
Dim Rst As DAO.Recordset
Set Rst = CurrentDb.OpenRecordset("Table1")
Do While Not Rst.EOF
Rst.Edit
Select Case Rst("Status")
Case "Aguard. PRAZO RECURSAL"
If DateDiff("d", Rst("Ultima Alteração"), Date) > 30 Then Rst("Prazo") = "Vencido"
Case "AGUARD. PRAZO ESPECIAL"
If DateDiff("d", Rst("Ultima Alteração"), Date) > 15 Then Rst("Prazo") = "Vencido"
Case "EM PROC. DE INSCRIÇÃO EM D.A."
If DateDiff("d", Rst("Ultima Alteração"), Date) > 45 Then Rst("Prazo") = "Vencido"
Case "AGUARD. PRAZO AJUR"
If DateDiff("d", Rst("Ultima Alteração"), Date) > 120 Then Rst("Prazo") = "Vencido"
Case Else
If IsNull(Rst("Ultima Alteração")) Then
Rst("Prazo") = "S/ PRAZO"
ElseIf IsDate(Rst("Ultima Alteração")) Then
If DateDiff("d", Rst("Ultima Alteração"), Date) > 360 Then
Rst("Prazo") = "360 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 330 Then
Rst("Prazo") = "330 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 300 Then
Rst("Prazo") = "300 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 270 Then
Rst("Prazo") = "270 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 240 Then
Rst("Prazo") = "240 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 210 Then
Rst("Prazo") = "210 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 180 Then
Rst("Prazo") = "180 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 150 Then
Rst("Prazo") = "150 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 120 Then
Rst("Prazo") = "120 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 90 Then
Rst("Prazo") = "90 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 60 Then
Rst("Prazo") = "60 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 45 Then
Rst("Prazo") = "45 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 30 Then
Rst("Prazo") = "30 dias"
ElseIf DateDiff("d", Rst("Ultima Alteração"), Date) > 15 Then
Rst("Prazo") = "15 dias"
End If
End If
End Select
Rst.Update
Rst.MoveNext
Loop
Set Rst = Nothing
End Sub