35
Excel單元格中怎樣才能在我的VBA函數被稱爲細胞?從一個函數被調用
換句話說,什麼是VBA相當於間接(ROW(),COLUMN())?
我是不是正在尋找ActiveCell。
我想要做的是有一個簡單的功能ThisRow_Col(rColumn As String)
返回它是從所謂的行的列X。在B2中說我呼叫= ThisRow_Col(「A」),它應該返回A2的值。無論哪個單元處於活動狀態,這都應該起作用
編輯:由於查爾斯的答案:Application.Caller。下面的代碼獲取當前行的列X,獨立的,其中的選擇是:
Function ThisRow_Col(rColumn As Range)
' Return INDIRECT(rcolumn & ROW())
ThisRow_Col = Application.Caller.Worksheet.Cells(Application.Caller.Row, rColumn.Column).Value
End Function
注意,通過列的範圍(ThisRow_Col(A1)
)比把它當作一個字符串更好,因爲Excel可以自動如果您移動或插入列,請更新公式。當然,1
排A1
只是一個約定。
很酷,我從來不知道。 +1 – phoog 2011-04-05 22:31:07
@dandv,@phoog,這裏是一些關於Application.Caller的更多細節:http://stackoverflow.com/questions/3861431/vba-how-to-get-the-last-used-cell-by-vba -code - 當 - 的 - 最後的錯誤發生,在-AW/3874340#3874340 – jtolle 2011-06-02 14:22:01