- 帖子
- 406
- 主題
- 8
- 精華
- 0
- 積分
- 453
- 點名
- 0
- 作業系統
- WINDOWS 7
- 軟體版本
- 2007
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2015-2-7
- 最後登錄
- 2021-7-31
|
2#
發表於 2020-6-18 02:16
| 只看該作者
本帖最後由 n7822123 於 2020-6-18 02:29 編輯
回復 1# Cyssuc
需求:
****想把BOM表展開為自動追料及提醒********排定工單
看不太懂你的起始欄位FU6怎麼來的,我設定H8欄位讓你填開始時間
Sub 填排程()
Dim CelStr As Range, Ri%, Arr, C%, WkD%, DayAdd%
Set CelStr = Rows(5).Find([H8], , xlValues, xlWhole)
[L6].Resize(4, 2000).ClearContents
CelStr(2) = "開始": CelStr(2).Select '開始日期
With Sheets("產品清單")
Ri = .[B:B].Find([H6], , xlValues, xlWhole).Row
Arr = Range(.Cells(Ri - 1, "E"), .Cells(Ri + 1, "D").End(2))
End With
For C = 1 To UBound(Arr, 2)
WkD = Arr(3, C): DayAdd = 0
Do Until WkD = 0
DayAdd = DayAdd + 1
If CelStr(0, 1 + DayAdd) <> "S" Then WkD = WkD - 1
Loop
CelStr(2, 1 + DayAdd) = Arr(1, C)
CelStr(3, 1 + DayAdd) = Arr(2, C)
If C <> UBound(Arr, 2) Then
CelStr(4, 1 + DayAdd) = Arr(1, C + 1)
CelStr(5, 1 + DayAdd) = Arr(2, C + 1)
Set CelStr = CelStr(, 1 + DayAdd)
End If
Next C
End Sub
排程範例VBA.rar (369.29 KB)
|
|