返回列表 上一主題 發帖

[發問] 更新日期+假日不更新

回復 10# cowww


    If B = Format(Date, "yyyy.mm.dd") Then
前方沒有給B變數值,所以
B 必定不等於 Format(Date, "yyyy.mm.dd")
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

回復 10# cowww


Sub 判定路徑下檔案是不是存在()
If Dir("D:\2023.04.14 TEST.xls") <> Empty Then
   MsgBox "有這檔案"
End If
End Sub
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

回復 10# cowww


Sub 先判定是不是有今天的()
Dim T$, A%, B$
T = "\\shl-group.com\dept\MFMG\B.各組資料 (Team inform)\E.生管組 (PPC group)\D.生產相關\2.每日模具異動\模具異動-六福\"
A = Format(Date, "W")
B = Format(Date, "yyyy.mm.dd")
If Dir(T & B & " 每日模具異動.xlsx") = Empty Then
   B = Format(Switch(A = 7, Date - 1, A = 1, Date - 2, A = 2, Date - 3, A > 2, Date - 1), "yyyy.mm.dd")
   If Dir(T & B & " 每日模具異動.xlsx") = Empty Then MsgBox "找不到 " & B & " 檔案": Exit Sub
End If
Workbooks.Open (T & B & " 每日模具異動.xlsx")
End Sub
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

回復 10# cowww


    用13#樓查檔案是否存在的方式再多一個回圈 從今天開始判定,找不到就倒退日期繼續找,找到就跳出迴圈,開啟檔案
如此方式可以找到最新的,不必考慮星期幾?
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

回復 14# Andy2483

非常感謝Andy2483大大的解答
看看明天是否會成功

明明有寫關閉提示的語法,為何開啟其他單位的異動表還是要輸入密碼呢??
'關閉提示
Application.DisplayAlerts = False

T = "\\shl-group.com\dept\MFMG\B.各組資料 (Team inform)\E.生管組 (PPC group)\D.生產相關\2.每日模具異動\模具異動-六福\"
A = Format(Date, "W")
B = Format(Date, "yyyy.mm.dd")
If Dir(T & B & " 每日模具異動.xlsx") = Empty Then
   B = Format(Switch(A = 7, Date - 1, A = 1, Date - 2, A = 2, Date - 3, A > 2, Date - 1), "yyyy.mm.dd")
   If Dir(T & B & " 每日模具異動.xlsx") = Empty Then MsgBox "找不到 " & B & " 檔案": Exit Sub
End If
Workbooks.Open (T & B & " 每日模具異動.xlsx")
密碼.PNG

TOP

回復 15# cowww


    Set xB = Workbooks.Open(ThisWorkbook.Path & "\" & BKN & ".xls", ReadOnly:=True) '唯讀開啟檔案
http://forum.twbts.com/viewthrea ... 2Bonly%3A%3D%2BTrue
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

回復 14# Andy2483


抱歉
Andy2483大大
我是新手(為了工作被迫學函數和VBA),不會寫迴圈

TOP

回復 17# cowww


For i = 0 To 10
   B = Format(Date -i, "yyyy.mm.dd")
   Msgbox B
Next
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

回復 18# Andy2483


非常感謝Andy2483大大的解答
但是我還是不知道那段語法要放哪個位置
我另外做一個按鈕來測試是否能夠開啟
Sub 按鈕2_Click()
T = "\\shl-group.com\dept\MFMG\B.各組資料 (Team inform)\E.生管組 (PPC group)\X.自動化工具(勿刪)\模具異動-六福(急件1.9專用)\"

A = Format(Date, "W")
B = Format(Date, "yyyy.mm.dd")
If Dir(T & B & " 每日模具異動.xlsx") = Empty Then
   For i = 0 To 10
   B = Format(Date - i, "yyyy.mm.dd")
   If Dir(T & B & " 每日模具異動.xlsx") = Empty Then MsgBox "找不到 " & B & " 檔案": Exit Sub
   Next
End If
Workbooks.Open filename:=T & B & " 每日模具異動.xlsx", ReadOnly:=True
End Sub
只抓第一天.PNG

TOP

回復 19# cowww


    謝謝前輩再回復,一起學習
以下是學習方案,請前輩參考

Option Explicit
Sub TEST()
Dim T$, B$, i%
T = "\\shl-group.com\dept\MFMG\B.各組資料 (Team inform)\E.生管組 (PPC group)\X.自動化工具(勿刪)\模具異動-六福(急件1.9專用)\"
For i = 0 To 10
   B = Format(Date - i, "yyyy.mm.dd")
   If Dir(T & B & " 每日模具異動.xlsx") <> Empty Then GoTo i01
Next
MsgBox "找不到 " & Date & " ~ " & Date - 10 & " 檔案": Exit Sub
i01: Workbooks.Open Filename:=T & B & " 每日模具異動.xlsx", ReadOnly:=True
End Sub
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流

TOP

        靜思自在 : 發脾氣是短暫的發瘋。
返回列表 上一主題