相关疑难解决方法(0)

从中调用Function的Excel单元格

如何从调用VBA函数的单元格中获取?

换句话说,什么是INDIRECT(ROW(),COLUMN())的VBA等价物?

不是在寻找ActiveCell.

我想要做的是有一个简单的函数ThisRow_Col(rColumn As String)返回它所调用的行的列X. 比如在B2中我调用= ThisRow_Col("A"),它应该返回A2的值.无论哪个单元活动,这都应该有效.

编辑:谢谢Charles的答案: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
Run Code Online (Sandbox Code Playgroud)

请注意,将列作为Range(ThisRow_Col(A1))传递比将其作为字符串传递更好,因为如果移动或插入列,Excel可以自动更新公式.当然,这一1A1只是一个惯例.

excel vba cell

49
推荐指数
1
解决办法
7万
查看次数

VBA:如何显示错误消息,就像具有"调试"按钮的标准错误消息一样?

像往常一样,我使用On Error Goto语句创建一个错误处理程序,在那里我放了几行清理代码并显示错误信息,但现在我不想失去默认处理程序的舒适度,它也指向我的确切行发生错误的地方.我怎样才能做到这一点?

提前致谢.

excel scripting vba ms-office excel-vba

22
推荐指数
1
解决办法
18万
查看次数

如何在Excel工作表中获取调用VBA函数的单元格的地址

是否有一个函数来获取调用VBA函数的单元格的地址?

我使用了"Application.ActiveCell.Address",但发现这种方法不是获取调用单元格地址的正确方法.

例如:如果我们有带保存的VBA功能的Excel工作表,重新打开工作表后,上述方法将无法工作.

请帮忙

尼莫

excel vba excel-vba

20
推荐指数
1
解决办法
3万
查看次数

标签 统计

excel ×3

vba ×3

excel-vba ×2

cell ×1

ms-office ×1

scripting ×1