Excel宏 - 相对引用



相对引用宏记录了相对于活动单元格的偏移量。如果需要在工作表的不同位置重复这些步骤,此类宏将非常有用。

假设您需要分析从280个选区收集的选民数据。对于每个选区,收集以下详细信息:

  • 选区名称。
  • 选区总人口。
  • 选区选民人数。
  • 男性选民人数,以及
  • 女性选民人数。

数据以如下所示的工作表形式提供给您。

Relative References

无法分析上述格式的数据。因此,请按如下所示将数据排列在表格中。

Table

如果您尝试按上述格式排列给定的数据:

  • 排列来自280个选区的数据需要大量时间

  • 容易出错

  • 这成为一项枯燥的任务,无法让您专注于技术方面

解决方法是录制宏,以便您可以在几秒钟内完成任务。宏需要使用相对引用,因为您在排列数据时会向下移动行。

使用相对引用

为了让宏录制器知道它必须使用相对引用,请执行以下操作:

  • 单击功能区上的视图选项卡。

  • 单击

  • 单击使用相对引用

Relative Reference

准备数据格式

排列上述给定数据的第一步是在带有标题的表格中定义数据格式。

创建如下所示的标题行。

Preparing

录制宏

按如下方式录制宏:

  • 单击录制宏。

  • 为宏指定一个有意义的名称,例如DataArrange。

  • 在单元格B4中键入=row()-3。这是因为序号是当前行号减去其上方的3行。

  • 剪切单元格B5、B6、B7、B8和B9,并将其分别粘贴到单元格C4到C8中。

  • 现在单击单元格B5。您的表格如下所示。

Macro Recording

第一组数据排列在表格的第一行。删除行B6-B11,然后单击单元格B5。

First Data Set

您可以看到活动单元格是B5,下一组数据将放在此处。

停止录制宏。您的数据排列宏已准备就绪。

运行宏

您需要重复运行宏才能完成如下所示的表格中的数据排列。

活动单元格是B5。运行宏。第二组数据将排列在表格的第二行,活动单元格将变为B6。

Macro Running

再次运行宏。第三组数据将排列在表格的第三行,活动单元格将变为B7。

Run the Macro

每次运行宏时,活动单元格都会前进到下一行,从而促进在适当位置重复录制的步骤。这是因为宏中使用了相对引用。

运行宏,直到所有280个数据集都排列到表格中的280行中。此过程只需几秒钟,并且由于步骤是自动化的,因此整个练习都不会出错。

广告