Jag har formatet 20051202 som jag vill ha utskrivet i en rapport i veckoformat 48DAG5 Jag antar att 20051202 lagras som text. Tror inte att man kommer undan med mindre än: Lite snyggare lösning är att lägga följande funktioner i en modul:Datumformat i access
hur gör jag ??Sv: Datumformat i access
DatumDel("ww";KonvDatum(Vänster$([TextDatum];4) & "-" & Mitt$([TextDatum];5;2) & "-" & Mitt$([TextDatum];7));0;0) & "DAG" & DatumDel("w";KonvDatum(Vänster([TextDatum];4) & "-" & Mitt$([TextDatum];5;2) & "-" & Mitt$([TextDatum];7));0;0)Sv: Datumformat i access
Public Function FriendlyDate(Value As Variant) As Variant
If IsDate(Value) Then
FriendlyDate = DatePart("ww", Value, vbUseSystemDayOfWeek, vbUseSystem) & "DAG" & Weekday(Value, vbUseSystemDayOfWeek)
Else
FriendlyDate = Null
End If
End Function
Public Function FixDate(Value As Variant) As Variant
If IsDate(Value) Then
FixDate = CDate(Value)
ElseIf Value Like "######" Then
FixDate = FixDate(Mid(Value, 1, 2) & "-" & Mid(Value, 5, 2) & "-" & Mid(Value, 7, 2))
ElseIf Value Like "########" Then
FixDate = FixDate(Mid(Value, 1, 4) & "-" & Mid(Value, 5, 2) & "-" & Mid(Value, 7, 2))
Else
FixDate = Null
End If
End Function
och anropa med:
= FriendlyDate(FixDate([KolumnMedDatum]))