如何在excel宏中检查activecell是否为A1?

时间:2014-11-20 10:44:11

标签: excel vba excel-vba

我是Excel Macros的新手。我一直试图找出活动单元格是否为A1。我试过了

if Activecell.Address = A1 then
      Msgbox(.....)

我也试过

if Activecell.Name = A1 then
      Msgbox(.....)

这两个不起作用。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

阿伦,你所做的并没有错。你的代码需要稍微修改一下。

检查此代码:

If ActiveCell.Address = "$A$1" Then
    MsgBox "You Selected Cell A1."
End If

答案 1 :(得分:2)

Address是一个字符串。在您显示的示例中,A1是某种类型的变量。字符串用引号括起来。

If ActiveCell.Address = "A1" Then

但我相信地址会返回绝对引用,所以

If ActiveCell.Address = "$A$1" Then

现在,如果你做了一些事情,你可能会自己解决这个问题。

  1. 在所有代码模块中使用Option Explicit。它会强制您声明您的变量,这会提醒您第一个问题。
  2. 在菜单栏上,转到查看>>即时。确保打开工作簿并选择单元格,然后在立即窗口中键入以下内容。

    ?ActiveCell.Address
    

    然后按 ENTER