Rellenar un campo con fecha anterior que no sea fin de semana ni feriado
Tengo un informe que me trae fechas en blanco que tengo que completar. El campo se llama "fecha resolución". Lo tengo que completar cuando está vacío con la fecha del día hábil anterior a "hoy", o sea, teniendo en cuenta que no sea fin de semana ni feriado. Como me habían explicado por acá me quedó así la query Siinm(diasemana(fecha())=2;fecha()-3;fecha()-1) que me funciona perfecto para los fines de semana, pero no para los feriados... No sé si esto se podría arreglar desde la consulta.
Entonces escribí
Dim rs As Recordset
Dim vFecha As Date
Dim var As Integer
Set db = CurrentDb
Set rs = db.OpenRecordset("Select FECHARESOLUCIONCPI from realizado")
Set rsx = db.OpenRecordset("feriados")
rs.MoveFirst
Do While Not rs.EOF
var = 0
vFecha = Date()
k = 0
Do While FECHARESOLUCIONCPI Is Null
rsx.MoveFirst
If Weekday(vFecha, 0) <> 6 And Weekday(vFecha, 0) <> 7 Then
Do While Not rsx.EOF
If Day(vFecha) = Day(rsx!feriado) And Month(rsx!feriado) = Month(vFecha) Then
k = k + 1
End If
rsx.MoveNext
Loop
var = var + 1
End If
vFecha = vFecha + 1
Loop
rs.Edit
rs!FECHARESOLUCIONCPI = var - k
rs.Update
rs.MoveNext
Loop
End Function
Obviamente no funciona, si me pueden ayudar