0
以下代碼僅適用於c = 2
,但我希望它也適用於其他值。下面是我想要運行它的Excel表格。在Excel VBA中嵌套for循環
Date PickupCost StorageCost DeliveryCost
1/1/2017 140 35 0
1/8/2017 80 20 0
1/10/2017 0 0 149
1/30/2017 35 8 0
我要填寫每個日期失蹤,但只在第3欄(StorageCost
)值的數據需要在其他失蹤日期值前一天的StorageCost
值相同。
Dim j, p, w, c As Long
Dim date1, date2 As Date
j = Cells(Rows.Count, 1).End(xlUp).Row
w = 2
For c = w To j
date1 = Range("A" & w).Value
date2 = Range("A" & (w + 1)).Value
p = DateDiff("d", date1, date2)
For w = 2 To p
Range("A" & (c + 1)).EntireRow.Insert
ActiveSheet.Cells(c + 1, 1).Value = (ActiveSheet.Cells(c, 1).Value) + 1
ActiveSheet.Cells(c + 1, 2).Value = 0
ActiveSheet.Cells(c + 1, 3).Value = ActiveSheet.Cells(c, 3).Value
ActiveSheet.Cells(c + 1, 4).Value = 0
c = c + 1
Next w
w = w + 1
ActiveSheet.Range("A1").Select
j = Cells(Rows.Count, 1).End(xlUp).Row
Next c
什麼是C應該是和你在哪裏初始化呢? –
c是基於哪個循環需要運行的次數的計數器,以便需要計算在前一行的行和日期的每個日期組合之間的間隙。它是根據w的值初始化的。 –
請解釋你想要做得更好 - 我不明白。 「數據缺失」是否爲0值?你能舉一個你想要結果的例子嗎? – user1274820