[VBA ] 請問如何把常數項位置改為變數的方式表示

看板Visual_Basic作者 (freshman)時間17年前 (2008/07/17 18:48), 編輯推噓0(004)
留言4則, 2人參與, 最新討論串1/1
各位大大,我也是一個沒有學過VBA,但是老師很堅持要我寫出來... 目前查了書和爬文,但相關背景太少了,很多都不太懂。因為時間緊迫只好求助各位 我用錄製巨集的方式去看程式碼 但因為我相同的巨集要作49遍,需要用到迴圈 所以必須將錄製好的程式碼中的位置改成變數。 (本來我的作法是複製程式碼改數字,然後貼49遍,但跑不動>"<,而且好累...) 後來我已經知道可以把Range("I38")改成Cells(38,9) 所以cells裡面可以用(i,j)當作變數 但是其他的我就不會改了,如下所示 Cells(43, 20).Select ActiveCell.FormulaR1C1 = "=LOOKUP(R[-1]C,R43C10:R79C10,R43C17:R79C17)" ^^^^^^ ^^^^ ^^^ ^^^ ^^^ 還有 Cells(43, 21).Select ActiveCell.FormulaR1C1 = "=R[1]C+40" ^^^^ Cells(45, 21).Select ActiveCell.FormulaR1C1 = "=ADDRESS(R[-2]C,COLUMN(R[-25]C[-1]))" ^^^^^^^ ^^^^^^^^^^^^ 以及 Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _ Formula1:="=$U$42", Formula2:="=$U$47" ^^^^^^ ^^^^^^^ Cells(4, 28).Select ActiveCell.FormulaR1C1 = "=COUNTIF(R42C20:R79C20,""<=36"")" ^^^^^^^^^^^^^ ^^^^^ Cells(4, 29).Select ActiveCell.FormulaR1C1 = "=R[38]C[-8]" ^^^^^^^^^^ 總之我遇到類似R**C**或是R[**]C[**]就不知道怎麼換成變數了?? 先謝謝各位大大了!!感激不盡~~T.T -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.4.235

07/17 19:13, , 1F
RxCy是相對座標 很難在VBA中使用 但是可以完全替換成
07/17 19:13, 1F

07/17 19:14, , 2F
絕對座標 你最好仔細觀察公式參考到的各格位然後利用
07/17 19:14, 2F

07/17 19:15, , 3F
絕對座標(如A5:D12這種)去修改
07/17 19:15, 3F

07/17 20:15, , 4F
謝謝M大~我去試試看喔!!
07/17 20:15, 4F
文章代碼(AID): #18VoDm3q (Visual_Basic)