アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルのマクロについて教えてください。
マクロを実行し、同じフォルダ内に保存されているテキストファイルの日時(秒まで)
を指定セルに表示させる方法を詳しいコード共教えてください。

作業ブックのシート名「青紙表」セル「AX75」に表示

でお願いします。
テキストファイルは作業ブックと同じフォルダ内に一つしかありません。
又、テキストファイル名は
物件管理番号+再修正依頼.txtとなり
例えば
「1234678_3_再修正依頼.txt」となっております。
親切に教えて頂ける方、よろしくお願いします。

質問者からの補足コメント

  • 大変困ってます
    どなたかお助けください
    よろしくお願いします

      補足日時:2023/07/16 15:27

A 回答 (2件)

No.1さんの方法はFileSystemObjectを活用したものですが、FileSystemObjectを使わなくても同様のことができます。


以下のコードで、同じフォルダ内に保存されているテキストファイル「物件管理番号+再修正依頼.txt」というファイルの最終更新日時(秒まで)を、作業ブックのシート名「青紙表」セル「AX75」に表示できます。

前提条件は
>テキストファイルは作業ブックと同じフォルダ内に一つしかありません。
になります。

Sub mystamp()
Dim tDir As String
Dim tName As String
Dim fName As String
Dim fpName
Dim mystamp As Variant
tDir = ThisWorkbook.Path
tName = "*_再修正依頼.txt"
fpName = tDir & "\" & tName
fName = Dir(fpName)
If fName = "" Then
MsgBox "該当ファイルがありません。処理を中止します。"
Exit Sub
End If
fpName = tDir & "\" & fName
mystamp = FileDateTime(fpName)
Sheets("青紙表").Range("AX75").Value = mystamp
Range("AX75").NumberFormatLocal = "yyyy/m/d h:mm:ss"
End Sub
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
上手くできました。
感謝いたします。

お礼日時:2023/07/19 16:48

以下のVBAコードは、Excelのマクロを使用して同じフォルダ内に保存されているテキストファイルの日時(秒まで)を指定のセルに表示する方法を示しています。

シート名が「青紙表」で、セルが「AX75」の場合を想定しています。

vba                          Copy code

Sub テキストファイルの日時表示()
Dim ファイルパス As String
Dim ファイル名 As String
Dim 日時 As String

' テキストファイルのパスを作成
ファイルパス = ThisWorkbook.Path & "\" & Range("A1").Value & "_3_再修正依頼.txt" ' テキストファイル名の設定に応じて変更してください

' テキストファイルの日時を取得
On Error Resume Next
With CreateObject("Scripting.FileSystemObject").GetFile(ファイルパス)
If Err.Number <> 0 Then
MsgBox "指定のファイルが見つかりません。"
Exit Sub
End If
日時 = Format(.DateLastModified, "yyyy/mm/dd hh:mm:ss")
End With
On Error GoTo 0

' 日時を指定のセルに表示
Sheets("青紙表").Range("AX75").Value = 日時
End Sub


上記のコードをExcelのVBAエディタに貼り付けて実行すると、指定のセルにテキストファイルの日時が表示されます。ただし、テキストファイルのパスやファイル名が正確に設定されている必要があります。また、マクロを実行する前に作業ブックを保存しておくことをおすすめします。
    • good
    • 0
この回答へのお礼

回答ありがとうございます
早速試してみます
助かりました
感謝致します

お礼日時:2023/07/16 18:36

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!