Hej!
Ännu en fråga: När ID-numrena kommer upp i rutan så blir det exempelvis 6.5435345E+23 osv istället för bara siffror... Jag har ändrat formatet i dokumentet så att detta inte skall hända men ändå så händer det i messageboxen? Hmm...
Och är detta korrekt ifall jag vill använda 10 år bakåt från dagens datum?
Dim p As Long
Dim vnt As Variant
Dim strToPrint As String
'Läser in din döpta tabell till en array, (vnt)
vnt = wsData.Range("mytable")
For p = 1 To UBound(vnt, 1)
'Testar om värdet i arrayen på plats i, 1 är ett datum.
If IsDate(vnt(p, 10)) Then
'Testar om värdet på plats i, 10 är äldre än 10 år
If (CDbl(vnt(p, 10)) < Date - 120) Then
'Lägger till ID till sträng med radbryt för varje ID.
strToPrint = strToPrint & vbNewLine & vnt(p, 4)
End If
End If
Next p
If strToPrint <> "" Then
MsgBox (strToPrint)
Else
MsgBox ("Inga IDs är äldre än 10 år")
End If
Kommer nämligen använda databasen flera år framåt och då är inte 2006-01-01 10 år bakåt längre.
När jag gör som jag skrivit så får jag dock upp fler ID-nummer i rutan än de som är äldre än 10 år. Vad är felet här? Så frustrerande när man har så lite kunskap, haha.