
同じフォルダ内にあるテキストファイルを監視し更新があった場合に指定セルに「更新」と表示出来るコードを設定しましたが、別添のようなエラーメッセージが出てしまします。
コード内(fileDateTime)が変色しております。
詳しいコード共に解決方法を教えてください。
このコードは作業ブックの「Sheet1」に設定しております。
コード
Option Explicit
Private Sub Worksheet_Activate()
' シートがアクティブになるたびに監視を開始する
StartFileMonitoring
End Sub
Private Sub Worksheet_Deactivate()
' シートが非アクティブになったら監視を停止する
StopFileMonitoring
End Sub
Private Sub StartFileMonitoring()
Application.OnTime Now + TimeValue("00:00:02"), "CheckForFileUpdate"
End Sub
Private Sub StopFileMonitoring()
On Error Resume Next
Application.OnTime Now + TimeValue("00:00:02"), "CheckForFileUpdate", , False
End Sub
Private Sub CheckForFileUpdate()
Dim folderPath As String
Dim fileName As String
Dim filePath As String
' 作業フォルダのパスを取得
folderPath = ThisWorkbook.Path
' 監視対象のテキストファイル名を設定(ここでは"sample.txt"としますが、実際のファイル名に合わせてください)
fileName = "23079238-1_再修正依頼.txt"
' ファイルのフルパスを取得
filePath = folderPath & "\" & fileName
' ファイルが存在し、前回の更新日時と異なる場合、セルに「更新」と表示する
If FileExists(filePath) And FileUpdated(filePath) Then
ThisWorkbook.Sheets("再修正").Range("A1").Value = "更新"
End If
' 監視を再開する
StartFileMonitoring
End Sub
Private Function FileExists(filePath As String) As Boolean
On Error Resume Next
FileExists = (Dir(filePath) <> "")
On Error GoTo 0
End Function
Private Function FileUpdated(filePath As String) As Boolean
Dim fileDateTime As Date
Dim prevFileDateTime As Date
Static prevFilePath As String
' 前回のファイルパスが設定されていない場合、または前回と異なるファイルを監視する場合
If prevFilePath = "" Or prevFilePath <> filePath Then
prevFileDateTime = #1/1/1601# ' 初期値は1601年1月1日(ファイルが存在しないことを示す)
prevFilePath = filePath
End If
' ファイルの更新日時を取得
fileDateTime = fileDateTime(filePath)
' 前回の更新日時と異なる場合、ファイルが更新されたと判定する
If fileDateTime <> prevFileDateTime Then
prevFileDateTime = fileDateTime
FileUpdated = True
End If
End Function

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/08 15:45
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/03 09:11
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・昔のあなたへのアドバイス
- ・字面がカッコいい英単語
- ・許せない心理テスト
- ・歩いた自慢大会
- ・「I love you」 をかっこよく翻訳してみてください
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・はじめての旅行はどこに行きましたか?
- ・準・究極の選択
- ・この人頭いいなと思ったエピソード
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
タイムスタンプの更新の方法2
-
EXCEL VBA tif画像のプロパティ...
-
ExcelVBA 文字コード変換
-
「エクセルファイルが開いてい...
-
VBAで色々な種類のファイルを開く
-
excel マクロ PDF化の際のエラ...
-
フォルダ階層・ファイル名・ペ...
-
WinInet.dll の使い方
-
VBAでCSVファイルを読み込もう...
-
Accessのウインドウサイズの固定
-
vbs ブック共有を解除
-
エクセルのVBAで開いている...
-
ffftpでファイル取得が0バイト...
-
visual studioでフォームデザイ...
-
ACTIVEXの拡張子
-
EXCEL VBAを使ったファイル解析...
-
サブフォルダ含むフォルダ内の...
-
動かなくなってしまった古いVBA...
-
VBA ファイル名取得
-
エクセルのプロパティーでセキ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
動かなくなってしまった古いVBA...
-
vbaサブフォルダーをワイルドカ...
-
FileDialog オブジェクトでファ...
-
excel マクロ PDF化の際のエラ...
-
サブフォルダ含むフォルダ内の...
-
「エクセルファイルが開いてい...
-
VBAでフォルダ内のhtmlファイル...
-
Accessのウインドウサイズの固定
-
EXCEL VBAを使ったファイル解析...
-
VB6でUTF-8ファイルの読取りを
-
ExcelVBA 文字コード変換
-
【ACCESS VBA】アクセスからデ...
-
Wordのプロパティ・総ページ数...
-
複数のワークブックのVBAを変更...
-
AccessからOLEオブジェクト型の...
-
フォルダ内のファイル存在監視...
-
FTP対応のアプリケーション
-
ffftpでファイル取得が0バイト...
-
vbs ブック共有を解除
-
エクセルのVBAで開いている...
おすすめ情報