0

VBA を使用して Excel レポートを作成し、入力ファイルから読み取ったすべてのファイル パス名の Last Modified 日付プロパティ値を表示しようとしています。これは、LastModified 日付を取得する方法です。

Set fso = CreateObject("Scripting.FileSystemObject")
Set currentFile = fso.GetFile(inputFile)
Sheet.Cells(r, 2).Value = currentFile.DateLastModified '<<<Incorrect value

読み取られたファイルごとに表示される値は、それぞれの場合の現在のシステム時刻です。Windows エクスプローラーは正しい最終更新時刻を表示します。デバッグすると、DateLastModified プロパティが実際には Excel レポートに表示される値と同じであることがわかります。

DateLastModified 関数が機能していないように見えるのはなぜですか?

これが関連しているかどうかはわかりませんが、私の PC には msvbvm60.dll VB ランタイムがあります。それは登録の問題でしょうか?VB.NET プロジェクトから scrrun.dll への参照を設定できませんでした。ここの指示に従いました:scrrun.dllから新しいライブラリを作成します。Scripting.dll という別の名前のライブラリ dll が作成されたようで、これを参照できました。これが関連しているかどうかはわかりません。

4

2 に答える 2

0

謝罪いたします。それは愚かなコーディングのバグでした。ファイルから読み取ったパスではなく、入力ファイルの変更日をチェックしていました。当たり前!

これを削除する価値がないかどうかは、コミュニティ次第です。

于 2013-10-22T16:56:19.373 に答える