Creati un campo CALCOLATO che genera un progressivo da 1(settimana attuale) a 52 ultima settimana sfasato della settimana attuale...!
In linea di massima ti basta SOTTRARRE alla settimana della Data il Numero della Settimana attuale... poi non so come hai gestito le date..!
Vedi quì:
http://forum.masterdrive.it/access-79/raccolta-funzioni-manipolazione-date-95382/
Public Function Date2Week(Optional dtmDate As Variant) As Byte
' ------------------------------------------------------
' Calcolo formato ISO 8601:1988 standard
' Verificati i casi da KB [OK]
' [url]https://support.microsoft.com/it-it/kb/200299[/url]
' ------------------------------------------------------
Dim Jan1 As Date
Dim Sub1 As Boolean
Dim Ret As Byte
If IsMissing(dtmDate) Then
Jan1 = DateSerial(Year(Date), 1, 1)
Else
Jan1 = DateSerial(Year(dtmDate), 1, 1)
End If
Sub1 = (Format(Jan1, "ww", VBA.VbDayOfWeek.vbUseSystemDayOfWeek, VBA.VbFirstWeekOfYear.vbUseSystem) = 1)
Ret = DatePart("ww", dtmDate, VBA.VbDayOfWeek.vbUseSystemDayOfWeek, VBA.VbFirstWeekOfYear.vbUseSystem) + Sub1
Date2Week = Ret
End Function
Sicchè se testo la Funzione ho:
?Date2Week(Date())
46
Quindi se sottraggo alla settimana del Campo data 45(46-1)... ottengo un campo Calcolato che parte da 1(per questa settimana) e sarà progressivo per tutte le date a seguire.
ValoreOrdinamento=Date2Week(CampoData)-(Date2Week(Date())+1)
Che problema riscontri...?