1 1 1 1 1 1 1 1 1 1 Rating 5.00 (2 Votes)

Problemstellung:
Auslesen und Ändern von Dateiattributen unter VBA durch die GetAttr- und SetAttr-Funktion
und auslesen von Dateidatumsangaben mittels der Scripting von MS.

Voraussetzungen:
Das Bsp ist ab A97 lauffähig.

Funktionsweise:
Lesen der Attribute:
Nach dem öffnen der Datei werden die Attribute eingelesen und den Checkboxen zu gewiesen:
1
2
3
4
5
6
Dim ro, hi, SY, av 
'Die einzelenen Attribute werden ausgelesen 
ro = GetAttr(txt_Dateipfad) And vbReadOnly
hi = GetAttr(txt_Dateipfad) And vbHidden
SY = GetAttr(txt_Dateipfad) And vbSystem
av = GetAttr(txt_Dateipfad) And vbArchive

Der Rückgabewert ist eine Konstante:
vbReadOnly= 1
vbHidden = 2
vbSystem = 4
vbArchive = 32

Lesen der Datumsangaben:
Die 3 Datumswerte der Datei (Erstellt, Modifiziert und letzter Zugriff) werden mit folgender Funktion ausgelesen:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Function DateiDatumAuslesen(strPathFile As String, Art As Integer, Optional intFolderFile As Integer = 1)
    
' -----------------------------------------------------
'  Funktion zum Auslesen von Datei-Datumswerten. Durch
'  die "Art" können 3 Datumswete unterschieden werden:
'     1 = Datum der letzten Modifikation
'     2 = Datum des letzten Zugriffs
'     3 = Datum der Erstellung
' -----------------------------------------------------
    
Dim b
         
    If intFolderFile = 1 Then
        Set b = oFSO.GetFile(strPathFile)
    Else
        Set b = oFSO.GetFolder(strPathFile)
    End If
        
    Select Case Art
        Case 1
            DateiDatumAuslesen = b.DateLastModified
        Case 2
            DateiDatumAuslesen = b.DateLastAccessed
        Case 3
            DateiDatumAuslesen = b.DateCreated
    End Select
        
End Function

Der Funktion wird der komplette Pfad und Dateiname und eine Zahl die der Wert darstellt übergeben.
Ein setzen der Datumsangaben mittels Scripting Runtime ist nicht möglich.
Dafür gibt es hier eine Lösung:  API: Datum- und Zeitangaben von Dateien manipulieren

Setzen der Attribute:
Um die Attribute neu zu setzen ist es nur erforderlich der Funktion SetAttr den Pfad der Datei und die Summe der
Konstanten zu übergeben.
z.B. der Datei C:\Test.txt die Attribute vbReadOnly und vbArchive

1
SetAttr "C:\Test.txt", 33

Dateien:
Auslesen und Ändern von Dateiattributen unter VBA durch die
GetAttr- und SetAttr-Funktion und auslesen von Dateidatumsangaben
mittels der Scripting Runtime von MS.

ab A97

Die Zip-Datei enthält ein Version für A97 und eine ab A00

Datum 05.02.2018
Dateigröße 79.62 KB
Download 3.230

Ähnliche Artikel

Kommentar schreiben

Sicherheitscode
Aktualisieren

Login Form

Neueste Artikel

SQL zu VBA Konverter
26. Oktober 2018
Problemstellung: Gibt es eine Möglichkeit SQL-Code einer Abfrage so zu konvertieren das der Code in VBA genutzt werden kann? Lösung: Bis Access 2010 gibt das Tool "SmartTools SQL aus Abfragen 3.0"...
1.png2.png1.png2.png4.png1.png5.png
Heute6
Gestern67
Diese Woche559
Dieser Monat1215
Total1212415

  • IP: 34.228.41.66
  • Browser: Unknown
  • Version:
  • OS: Unknown

Online

1
Online

16. Dezember 2018

Letzte Kommentare

  • Trusted Locations Manager

    Tommy Admin 13.07.2018 13:06
    RE: Trusted Locations Manager
    Hallo Matthias, aus Ermangelung einer 64bit Version kann ich das leider nicht prüfen. Tut mir leid. Gruss ...

    Weiterlesen...

     
  • Trusted Locations Manager

    Matthias 13.07.2018 06:48
    Funktioniert nicht
    Habe gerade den TL-Manager installiert. Nach dem Start sagt er mir, dass es kein Office erkennen ...

    Weiterlesen...