
同じフォルダ内にあるテキストファイルを監視し更新があった場合に指定セルに「更新」と表示出来るコードを設定しましたが、別添のようなエラーメッセージが出てしまします。
コード内(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で質問しましょう!
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCEL VBAを使ったファイル解析...
-
Wordのプロパティ・総ページ数...
-
Vb6.0ランタイム―FlexGridとカ...
-
AccessからOLEオブジェクト型の...
-
エクセルのプロパティーでセキ...
-
エクセルvbaでdocuworksprinter...
-
同一フォルダにある複数のテキ...
-
PowerPoint 2002でファイル名を...
-
パスワード保護されたExcelファ...
-
WinAPIのGetDIBitsでディスプレ...
-
Cで2次元配列にCSVファイルを...
-
MSオフィス2013にMS365が上書き...
-
Vba初心者です。下記のコード助...
-
RGBのバイナリデータをCImageに...
-
Windows10でコマンドプロンプト...
-
ダイアログでフォルダ名を取得...
-
バッチファイル XCOPYで上書き...
-
デスクトップの画像をhtmlに表...
-
バイナリ出力
-
ExcelブックをGoogleスプレッド...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
動かなくなってしまった古いVBA...
-
「エクセルファイルが開いてい...
-
excel マクロ PDF化の際のエラ...
-
ffftpでファイル取得が0バイト...
-
VBAでフォルダ内のhtmlファイル...
-
EXCEL VBAを使ったファイル解析...
-
VB6でUTF-8ファイルの読取りを
-
AccessからOLEオブジェクト型の...
-
複数のワークブックのVBAを変更...
-
サブフォルダ含むフォルダ内の...
-
vbaサブフォルダーをワイルドカ...
-
タイムスタンプの更新の方法2
-
VBからExcelファイルを開くとき...
-
VBAでCSVファイルを読み込もう...
-
vbsでのアスタリスクとファイル...
-
FileDialog オブジェクトでファ...
-
VBA、ファイル名検索から開く、...
-
フォルダ階層・ファイル名・ペ...
-
webブラウザからローカルファイ...
-
ファイルを複数選択した時のフ...
おすすめ情報