通过Excel,您可以通过检查编辑栏左侧的“名称框”内容轻松查看当前选定单元格的位置。很好,这很好,但是有时候您想在一个单元格中实际拥有一个单元格的地址。例如,您可能希望单元格A1包含当前所选单元格的地址。

这意味着,如果选择了单元格E4,则A1将包含其地址,即$ E $ 4。如果然后按向右箭头键,则A1的内容将更改为$ F $ 4。

为了返回当前所选单元格的地址,您必须诉诸使用宏。以下宏将返回运行时所选单元格的值:

Public Function CurrentCell() As String     Application.Volatile     CurrentCell = ActiveCell.Address End Function

包含Application.Volatile方法意味着每次重新计算工作表时,都会再次运行此函数(宏)。要使用该宏,可以将以下内容放在所需的任何单元格中,包括A1:

=CurrentCell

您应注意,此宏不会导致每次移动到其他单元格时A1的内容都会改变。同样,仅当重新计算工作簿时,A1的内容才会更改,方法是更改​​工作表中的内容或按F9。

相反,如果您需要具有一个“实时”版本,该版本可以在更改所选单元格时自动更新A1,则可以按照以下步骤操作:

。通过按Alt + F11来显示VBA编辑器。

。在编辑器左侧的“项目”窗口中,双击正在使用的工作表的名称。 (您可能需要先打开VBAProject文件夹,然后打开它下面的Microsoft Excel Objects文件夹。)

。在工作表的代码窗口中,单击“对象”下拉列表,然后选择“工作表”。当您这样做时,过程应更改为SelectionChange,并且事件处理程序的框架应显示在代码窗口中。

。更改事件处理程序,使其如下所示:

。关闭VBA编辑器。

现在,在单张纸上移动时,A1的内容应不断更新以反映您的位置。

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(2302)适用于Microsoft Excel 97、2000、2002和2003。您可以在以下位置找到适用于Excel功能区界面的本技巧的版本(Excel 2007及更高版本):