我想为一个粘贴特殊任务构建一个宏(使用宏记录器):我在A列中有3组3个元素,我想从第二个开始复制每个组的转发器行(在C,D,E列中),如下图所示。
我尝试通过在执行粘贴特殊操作时打开宏录制器来执行此操作,但此时宏仅适用于我在录制宏的单元格上的数据(例如,如果我录制宏)使用范围A2:A4,这是唯一可以转置输入数据的地方)。是否有正确的方法将宏录制器用于此类任务?
答案 0 :(得分:4)
宏录制器不是最有用的工具。大多数经验丰富的VBA程序员仅将其用于快速实验,以发现有关Excel对象模型如何工作的一些细节,然后丢弃实际代码。
话虽如此,它仍然有用,特别是如果你既没有时间也没有学习VBA的倾向。
做你想做的事情
1)在开发人员标签上,选择选项Use Relative References
2)选择您要记录其修改的单元格或范围。通过选择单元格开始的录制宏通常不如录制的宏有用,在录制的宏中您仔细考虑了录制前想要选择的内容。
3)打开宏并记录您的动作。看看它是否有效。
4)如果它不起作用 - 看看你是否可以编辑代码。
5)如果情况变得更糟,请在Stack Overflow上提出一个重点问题。
使用此类录制宏的方法是首先选择要更改的单元格,然后调用宏。它将在所选单元格上执行与您在其他所选单元格上执行的操作相同的操作 - 但相对于当前选择具有所有偏移等。