Hej en liten fråga Hej Detta hittade jag i hjälpen om "DateAdd" funktionen. Har du möjligghet att välja datatyp för fältet? Att använda datum ger många fördelar. Tack Anders och SvenPon men det löste inte mitt problem.Datum problem
Det är så att jag ska hämta upp ett antal poster från en databas,
Stoppdatumet ska vara dagens datum med formatet 20030128 och lagras i en Long variabel och startdatumet ska vara av samma format. nu till mitt problem, Jag vill att start datumet ska vara en månad före alltså 20021228, detta ska ske automatiskt att datumet beräknas "en månad bakåt" oberoende av dagens datum. Jag fuskar så att alla månader har 30 dagar..
Hur göra ?
Mvh Torbjörn WallinSv: Datum problem
Mitt råd är att du gör på ett lite annorlunda sätt.
Dim startDate As Long
Dim stopDate As Long
stopDate = CDate(Date)
startDate = stopDate - 30
MsgBox " Testar " & Format$(startDate,"yyyy-mm-dd")
/SvenSv: Datum problem
Dim FirstDate As Date ' Declare variables.
Dim IntervalType As String
Dim Number As Integer
Dim Msg
IntervalType = "m" ' "m" specifies months as interval.
FirstDate = InputBox("Enter a date")
Number = InputBox("Enter number of months to add")
Msg = "New date: " & DateAdd(IntervalType, Number, FirstDate)
MsgBox MsgSv: Datum problem
Annars kan du konvertera om det till datum med dessa funktioner:
<code>
Public Function DateToLong(ByVal Value As Date) As Long
DateToLong = Year(Value) * 10000 + Month(Value) * 100 + Day(Value)
End Function
Public Function LongToDate(ByVal Value As Long) As Date
LongToDate = DateSerial(Value \ 10000, (Value \ 100) Mod 100, Value Mod 100)
End Function
</code>
Du kan då använda datumfunktionerna i vb.Sv: Datum problem [Löst]
Andreas du är en klippa....
Löste det på följande sätt med hjälp av din funktion
Dim StartaMatning As String
Dim Datum As Date
Dim Nummer As Integer
Dim InterVallStart as Long
Datum = Date$
Nummer = "30"
StartaMatning = DateAdd("d", Nummer, Datum - 60)
InterVallStart = DateToLong(StartaMatning)
Public Function DateToLong(ByVal StartaMatning As String) As Long
DateToLong = Year(StartaMatning) * 10000 + Month(StartaMatning) * 100 + Day(StartaMatning)
End Function
Nu så kan IntervallStart användas som startvärde för hämtning av värdena i Db
MVH Tobbe