這個和你在工作表中的公式基本一樣,工作表中怎麼寫,VBA中就這麼寫啊,你只需要將工作表的公式樣式設為R1C1,然後將工作表的公式複製進去就可以了。
Sheets(1).Range("B1:B10").FormulaR1C1 = "=VLOOKUP(RC[-1],表2!R1C1:R10C2,2,FALSE)"
親,R1C1的引用樣式相對於A1的樣式好處在於具有相同的公式單元格內公式的字元都是一模一樣的,這對於VBA來寫公式時是非常方便的的。舉個例子,你在B1中輸入=A1,拉到B10時,從B2到B10就是=A2, =A3 , … , =A10. 如果用VBA來寫的公式而又用A1樣式的話,豈不是要對每個單元格不同處理,會很麻煩,換做R1C1樣式的話,B1:B10中的公式都是=RC[-1], 一次就可以處理了:
Sheets(1).Range("B1:B10").FormulaR1C1 = "=RC[-1]"
[-1]代表相對與公式所在位置向左偏移1列,而公式的位置即為Sheets(1).Range("B1:B10"),你寫公式的時候就指明瞭,所以無需”在程式碼中使用.FoumulaR1C1語句前,一定要選中某一個單元格“。
請仔細理解R1C1樣式!
這個和你在工作表中的公式基本一樣,工作表中怎麼寫,VBA中就這麼寫啊,你只需要將工作表的公式樣式設為R1C1,然後將工作表的公式複製進去就可以了。
Sheets(1).Range("B1:B10").FormulaR1C1 = "=VLOOKUP(RC[-1],表2!R1C1:R10C2,2,FALSE)"
親,R1C1的引用樣式相對於A1的樣式好處在於具有相同的公式單元格內公式的字元都是一模一樣的,這對於VBA來寫公式時是非常方便的的。舉個例子,你在B1中輸入=A1,拉到B10時,從B2到B10就是=A2, =A3 , … , =A10. 如果用VBA來寫的公式而又用A1樣式的話,豈不是要對每個單元格不同處理,會很麻煩,換做R1C1樣式的話,B1:B10中的公式都是=RC[-1], 一次就可以處理了:
Sheets(1).Range("B1:B10").FormulaR1C1 = "=RC[-1]"
[-1]代表相對與公式所在位置向左偏移1列,而公式的位置即為Sheets(1).Range("B1:B10"),你寫公式的時候就指明瞭,所以無需”在程式碼中使用.FoumulaR1C1語句前,一定要選中某一個單元格“。
請仔細理解R1C1樣式!