Avatar billede groyk Novice
24. maj 2007 - 15:22 Der er 8 kommentarer og
1 løsning

Filens oprettelsdato

Hej

Nogen der kan forklare mig hvordan jeg tjækker hvornår en given fil er oprettet.

Skal bruge det til noget VBA kode.
Avatar billede kabbak Professor
24. maj 2007 - 20:46 #1
Avatar billede kabbak Professor
24. maj 2007 - 20:50 #2
Du retter i linjen med FullName, til din fil, her har jeg skrevet "C:\test.txt"

Private Sub ShowFileInfo()
'  This subroutine demonstrates the technique
    Dim hFile As Long
    Dim WFD As WIN32_FIND_DATA
    Dim FullName As String
    Dim Created As String
    Dim LastWrite As String
   
'  FullName is the path and filename
'  Substitute any valid file and path
    FullName = "C:\test.txt"
    hFile = FindFirstFile(FullName, WFD)
   
    If hFile > 0 Then
        Created = FileDate(WFD.ftCreationTime)
        MsgBox "File Created: " & Created, vbInformation, FullName
    Else
        MsgBox "File not found.", vbCritical, FullName
    End If
End Sub
Avatar billede groyk Novice
24. maj 2007 - 21:12 #3
Takker, prøver det imorgen.
Avatar billede kabbak Professor
24. maj 2007 - 22:11 #4
en noget kortere kode

Public Sub oprettet()
      Set objFSO = CreateObject("Scripting.FileSystemObject")
                Set ObjNewInfo = objFSO.GetFile("C:\test.txt")
                MsgBox "date created = " & ObjNewInfo.DateCreated
End Sub
Avatar billede groyk Novice
25. maj 2007 - 07:29 #5
Virker fint.

Men hvordan tjekker jeg om filen er mere end ex. 2 min. gammel?
Avatar billede kabbak Professor
25. maj 2007 - 08:14 #6
Public Sub oprettet()
Dim A As Long, B As Long, A1 As Double, B1 As Double, C As Double
      Set objFSO = CreateObject("Scripting.FileSystemObject")
                Set ObjNewInfo = objFSO.GetFile("C:\test.txt")
                MsgBox "date created = " & ObjNewInfo.DateCreated
                A = Int(Now())
                B = Int(ObjNewInfo.DateCreated)
                A1 = Now() - Int(Now())
                B1 = ObjNewInfo.DateCreated - Int(ObjNewInfo.DateCreated)
                C = ((A - B) + (A1 - B1)) * 24
                MsgBox "Alder = " & Format(C - D, "#.00") & " Timer" ' tiden er her decimaltal, så minutter er i 100 dele
End Sub
Avatar billede groyk Novice
25. maj 2007 - 10:04 #7
Hvorfor kan jeg ikke ændre følgende

DateCreated -> DateModified?
Avatar billede groyk Novice
17. juli 2008 - 07:33 #8
Venligst smid nogle svar så jeg kan afslutte spørgsmålet :-) (Lidt sent)
Avatar billede kabbak Professor
17. juli 2008 - 10:31 #9
.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester