- 帖子
- 913
- 主題
- 150
- 精華
- 0
- 積分
- 1089
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- office 2019
- 閱讀權限
- 50
- 性別
- 女
- 註冊時間
- 2011-8-28
- 最後登錄
- 2023-7-19
 
|
本帖最後由 PJChen 於 2020-2-10 18:18 編輯
回復 15# 准提部林
回復 19# jcchiang
前一個程式結束後,我還要作後續的檔案處理,我延用之前的語法,一樣是測試4月份,
以工作表中的Sheets("1").Range("A2")的日期(2020/4/1),抓月底日
改為這樣,但為什麼紅色部份,仍無法執行?
Lastday = DateSerial(Year(BK.Sheets("1").Range("A2")), Month(BK.Sheets("1").Range("A2")), 0) '月底日
mDay = Day(Lastday)
For i = 1 To mDay
With BK.Sheets(i & "")- Sub 下個月_理貨單_目的檔表頭值化()
- '比菲多理貨單
- Dim Lastday$, mDay%, BK As Workbook
- Dim myPath$, xFile$, i&
- Application.ScreenUpdating = False '關閉屏幕更新
- Application.DisplayAlerts = False '一般提警示訊息關閉
- myPath = "U:\b\" '另存目的資料夾
- xFile = Dir(myPath & "*.xlsx") '目的資料夾檔名
- Do While xFile <> ""
- Application.DisplayAlerts = False '一般提警示訊息關閉
- With Workbooks.Open(myPath & xFile)
- Set BK = Workbooks.Open(myPath & xFile) '開啟指定檔案
- Lastday = DateSerial(Year(BK.Sheets("1").Range("A2")), Month(BK.Sheets("1").Range("A2")), 0) '月底日
- mDay = Day(Lastday)
- For i = 1 To mDay '在工作表中循環
- With BK.Sheets(i & "")
- .[G1] = .[G1].Value '值化
- .[A1] = .[A1].Value '值化
- End With
- Next i
- Sheets("1").Activate
- Range("P1:V2").ClearContents
- Sheets("1").Range("G1") = Sheets("2").Range("G1").Value
- ActiveWorkbook.Close True '存檔後關閉檔案
- End With
- xFile = Dir
- Loop
- Application.ScreenUpdating = True '打開屏幕更新
- End Sub
複製代碼 |
|