Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Datum einer Datei in eine Tabelle schreiben

Begonnen von thorstens1304, April 02, 2012, 21:22:45

⏪ vorheriges - nächstes ⏩

thorstens1304

Hallo,

ich möchte das Datum einer bestimmten Datei jeweils in eine Tabelle schreiben und beim nächsten Mal wieder aktualisieren. Das Datum kriege ich ausgelesen über

Public Function DatumDatapack(Datapack)
    Dim fso, gf
    Dim LastUpdateDatapack
       
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set gf = fso.GetFile(Datapack)
    With gf
      LastUpdateDatapack = .DateLastModified 'Änderungsdatum
    End With
   
End Function


Ich muss jeweils 5 Dateien abfragen und in dafür vorgesehene Felder schreiben. Wie kriege ich dies am besten hin?

Beaker s.a.

Hallo Thorsten,
ZitatIch muss jeweils 5 Dateien abfragen und in dafür vorgesehene Felder schreiben. Wie kriege ich dies am besten hin?
Vielleicht indem Du der Function einen Rückgabewert spendierst:
Public Function DatumDatapack(Datapack) As Date
  Dim fso, gf
'Anmerkung: gf ist als Variant deklariert, - ist das so gewollt
  Dim LastUpdateDatapack
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set gf = fso.GetFile(Datapack)
  With gf
     LastUpdateDatapack = .DateLastModified 'Änderungsdatum
  End With

  DatumDatapack = LastUpdateDatapack

End Function

Aufruf dann mit:
Ziel = DatumDatapack(Datapack)
hth
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

thorstens1304

Danke für die Idee. Ich hätte es vielleicht genauer beschreiben sollen. Ich habe eine Tabelle:

DateiDatum
Datei1xx.xx.xx
Datei2xx.xx.xx
Datei3xx.xx.xx

Ich will jeweils die Spalte Datum mit dem aktuellen Dateidatum von Datei 1, 2 und 3 ausfüllen.

Beaker s.a.

Hallo Thorsten,
Vielleicht mit einer Aktualisierungsabfrage:
UPDATE DeineTabelle SET DatumNeu = DatumDatapack([Datei])
Anmerkung:
Datum ist ein gaanz schlechter Feldname, deshalb umbenannt; -
schaust Du hier: http://www.donkarl.com?FAQ1.5
hth
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

thorstens1304

Hallo,

ich werde die Felder dann anders benennen. Wie weise ich dann aber das Datum noch einer bestimmten Datei (einem bestimmten Datensatz/Zeile) zu? So oder anders?

UPDATE DeineTabelle SET DatumNeu = DatumDatapack([Datei]) where Dateiname="Datei1"

Beaker s.a.

Hallo Thorsten,
ZitatUPDATE DeineTabelle SET DatumNeu = DatumDatapack([Datei]) where Dateiname="Datei1"
So wird natürlich nur ein DS aktualisiert, und da gibt es jetzt zwei Felder mit dem Dateinamen ([Datei] und [Dateiname]).
Musst Du schon wissen, ob
1. Das Feld nun [Datei] oder [Dateiname] heisst,
2. Du nur einen DS aktualisieren willst, oder die ganze Tabelle.
Letzteres macht die o.a. Abfrage ohne WHERE-Klausel.
Da wird für jede/n Zeile/DS das Datumsfeld mit dem
Rückgabewert der Function aktualisiert, der für jeden DS
der Feldinhalt des Feldes mit dem Dateinamen übergeben
wird.
Verständlicher?
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)