iT邦幫忙

0

如何在64位元使用VBA方式修改檔案的「建檔日期」\「修改日期」

不明 2023-03-16 10:47:43982 瀏覽
  • 分享至 

  • xImage

如何在64位元使用VBA方式修改檔案的「建檔日期」\「修改日期」

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

0
Juro十六
iT邦新手 3 級 ‧ 2023-03-16 16:50:42

用vb有點麻煩了,直接用cmd吧

打開命令提示符或Powershell並進入要修改日期的文件所在的目錄。
輸入以下命令: copy /b filename +, ,,其中filename是文件名,最後的兩個逗號之間沒有空格。
接下來,輸入以下命令: copy /b filename +, ,,其中timestamp是你想要設置的日期和時間,格式為YYYYMMDDHHMM.SS,例如202103161200.00代表2021年3月16日12:00。注意,這裡的時間是24小時制。
最後用以下命令來刪除創建的臨時文件: del /q filename+

0
BeEvil_Y
iT邦新手 4 級 ‧ 2023-03-20 10:22:20

2013年網路上某位神人寫的

編寫人:Chip Pearson
信箱:chip@cpearson.com

論文(含檔案來源):
http://www.cpearson.com/excel/FileTimes.htm

VBA程式碼(我1500行全部看過了,無毒):http://www.cpearson.com/Zips/GetSetFileDateTime.zip

使用方式:
裡面有四個模組!
modGetSetFile Times(函式區)
modTest(應用區)
modTimeConversionFunction(轉換區)
modWorksheetFunctions(巨集區)

你可以利用他的「應用區」玩玩一個叫TestSetFileDateTime()
有一個變數叫WhatTime可以設定「你想修改什」
FileDateCreate = 1 = 製造日期
FileDateLastAccess = 2 = 存取日期
FileDateLastModified = 3 = 修改日期

日期可以改你想要的
TheNewDate = DateSerial(2006, 1, 2)
TheNewTime = TimeSerial(3, 4, 5)
結果:2006年1月2號11(3)點4時5分

親測WIN10,64位元可用。

只有「巨集區、應用區」你可以拿掉不用
「函式區、轉換區」直接複製到你的VBA
調用SetFileDateTime(檔案日期,時間,改什麼,GMT)

就可以了。
你如果有問題,自已發信(用英文)去問原作者。
別來問我,這東西是他寫的。

我要發表回答

立即登入回答