Letzten Dateizugriff feststellen und in Excel ausgeben
Hallo zusammen,
brauche mal etwas Hilfe bei diesem Script.
Dieses Script habe ich hier im Forum gefunden da, ich nach zuletzt geänderte Dateien suche.
Das Script gibt mir das Ergebinis in einer Textdatei aus. Ich hätte es aber, gerne in einer Excel Datei damit ich besser sortieren kann.
Das sollte Lokal und auf Netzlaufwerken funktionieren.
Sollte ca. so aussehen.
Vielen Dank.
Max
brauche mal etwas Hilfe bei diesem Script.
Dieses Script habe ich hier im Forum gefunden da, ich nach zuletzt geänderte Dateien suche.
Das Script gibt mir das Ergebinis in einer Textdatei aus. Ich hätte es aber, gerne in einer Excel Datei damit ich besser sortieren kann.
Das sollte Lokal und auf Netzlaufwerken funktionieren.
Sollte ca. so aussehen.
' ChkFileProperties.vbs
Option Explicit
On Error Resume Next
Dim objFSO, objFolder, objSubFld, objLog, f1, f2, colFiles, strMSG, strStart, strLog, i
strStart = InputBox("Wo solls denn losgehen?","Check4FileProperties")
strMSG = "Startverzeichnis: " & strStart & vbCrLf & "~~~~~~~~~~~~~~~~~~~~~~~~~~~"
strLog = "c:\CheckFileProperties.txt"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(strStart)
ChkSubFld objFolder
Private Sub ChkSubFld(StartFolder)
ChkFiles StartFolder
Set objSubFld = StartFolder.SubFolders
For Each f2 in objSubFld
ChkSubFld f2
Next
End Sub
Private Sub ChkFiles(Start)
Set colFiles = Start.Files
For Each f1 in colFiles
strMSG = strMSG & vbCrLf & objFSO.GetAbsolutePathName(f1) & vbCrLf
strMSG = strMSG & vbTab & "Erstellt: " & f1.DateCreated & vbCrLf
strMSG = strMSG & vbTab & "Letzter Zugriff: " & f1.DateLastAccessed & vbCrLf
strMSG = strMSG & vbTab & "Letzte Aenderung: " & f1.DateLastModified & vbCrLf
strMSG = strMSG & vbTab & "Dateigroeße (bytes): " & f1.Size
Next
End Sub
Set objLog = objFSO.CreateTextFile(strLog, True)
objLog.WriteLine "Datei wurde erstellt am : " & Now()
objLog.WriteLine "---------------------------------------"
objLog.Write strMSG
objLog.Close
MsgBox "Fertig!"
LoadFile strLog
Private Sub LoadFile(File)
Dim objShell, strApplication
strApplication = "notepad.exe"
Set objShell = CreateObject("WScript.Shell")
objShell.Run strApplication & " " & File
set objShell = Nothing
End Sub
Vielen Dank.
Max
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 7812818815
Url: https://administrator.de/contentid/7812818815
Ausgedruckt am: 15.11.2024 um 17:11 Uhr
3 Kommentare
Neuester Kommentar
Powershell Einzeiler in ne CSV:
Fertsch.
Wenn doch VBA sein muss warum auch immer
Zeppel
Get-ChildItem 'D:\Ordner' -File -Recurse | select Fullname,CreationTime,LastWriteTime,LastAccessTime,Length | export-csv .\files.csv -Delimiter ";" -NoTypeInformation -Encoding UTF8
Wenn doch VBA sein muss warum auch immer
Sub DateienAuflisten()
Dim fso As Object, STARTDIR As String, intRow As Long
Set fso = CreateObject("Scripting.FileSystemObject")
STARTDIR = "D:\Ordner"
With ActiveSheet
intRow = .Cells(.Rows.Count, "A").End(xlUp).Offset(1, 0).Row
With .Cells(intRow - 1, 1).Resize(1, 5)
.Value = Array("Name", "DateCreated", "DateLastModified", "DateLastAccessed", "Size")
.Font.Bold = True
End With
For Each file In fso.GetFolder(STARTDIR).Files
.Cells(intRow, "A").Resize(1, 5) = Array(file.Path, file.DateCreated, file.DateLastModified, file.DateLastAccessed, file.Size)
intRow = intRow + 1
Next
End With
End Sub
Zeppel
Zitat von @7426148943:
Powershell Einzeiler in ne CSV:
Powershell Einzeiler in ne CSV:
und wenn es unbedingt Excel sein muss, gibt es das:
https://github.com/dfinke/ImportExcel