標題:

EXCEL FormulaR1C1 使用疑問

a380空中廚房發問:

http://www.funp.net/769836 使用 FormulaR1C1,不使用 NOW(), R[3-I]C[-2] 錯誤, 更新: 經測試錯誤!!!!!!!!! 更新 2: 1. Cells(i, 10).FormulaR1C1 = "=MAX(0,R3C[-2]-RC[-1])" 2. [H3]=Now Range("I3:I7")).FormulaR1C1 = "=MAX(0,R3C[-2]-RC[-1])" ...............1~2 測試OK............... 3. =MAX(0,H$3-I3 ) ,測試答案OK,但有錯誤信息!!!! 感謝准大,請至回答區. 更新 3: 想確認 R[ ]C[ ] 的 [ ] 內 是否只可使用 常數 ,不可用 變數.

最佳解答:

固定以H3去減各列的時間: Cells(i, 10).FormulaR1C1 = "=MAX(0,R3C[-2]-RC[-1])" 將公式改為:=MAX(0,H$3-I3),再錄製看看! 使用同一公式,不須跑迴圈: [H3]=Now Range("I3:I7")).FormulaR1C1 = "=MAX(0,R3C[-2]-RC[-1])" opaabc 單字星 2013-03-28 16:47:08 補充: EXCEL VBA.利用程式碼載入公式 <.准提部林.> --------------------------------- ■資料範例: HIJ2yyyy/m/d hh:mm:ssyyyy/m/d hh:mm:sshh:mm:ss32013/3/28 16:38:162013/3/26 06:57:5909:40:1742013/3/26 06:57:5909:40:1752013/3/26 06:57:5909:40:1762013/3/26 06:57:5909:40:1772013/3/26 06:55:4109:42:35 ■程式碼1:以原程式碼修改如下 Sub T20130328_1() Dim i% [H3] = Now For i = 3 To 7 Cells(i, 10).FormulaR1C1 = "=MAX(0,R3C[-2]-RC[-1])" Next i End Sub ■程式碼2:不跑迴圈,以〔區域〕方式載入 Sub T20130328_2() [H3] = Now Range("J3:J7").FormulaR1C1 = "=MAX(0,R3C[-2]-RC[-1])" End Sub ■程式碼3:以〔公式原型〕載入 Sub T20130328_3() Dim y% y = [I65536].End(xlUp).Row If y < 3 Then Exit Sub [H3] = Now Range("J3:J" & y).Formula = "=MAX(0,H$3-I3)" End Sub --說明-- 1.y 為I欄最後一筆資料的列號,以此自動取得公式範圍。 2.Formula 可直接以〔公式原型〕載入。 --------------------------------- 2013-03-29 09:43:19 補充: 以〔變數〕跑FormulaR1C1: Sub T20130329_1() Dim i% For i = 3 To 7 Cells(i, 10).FormulaR1C1 = "=MAX(0,R[" & 3 - i & "]C[-2]-RC[-1])" Next i End Sub

其他解答:

試試: Cells(i, 10).FormulaR1C1 = "=MAX(0,R[3-" &英文自傳範例 i & "]C[-2]-RC[-1])"4D962705AE823D35
arrow
arrow

    李承翰放袍蘋弗揚 發表在 痞客邦 留言(0) 人氣()