说我在宏中有这一行:
Sheets("sheet1").Range("A1").Value = Sheets("sheet2").Range("A5").Value
我如何以编程方式(仅通过VBA)进行编辑,以便在{1}}和A1
,A2
,A1
之间的工作表1中插入行或列,因为行号被改变了,它不会搞乱吗?
答案 0 :(得分:1)
避免这类问题的标准方法是使用Named ranges
。
如果A1
是结果的重要位置,则可以将其称为“myResult”,如果A5
是输入的重要位置,则可以将其称为“myInput”。然后您的代码将更改为:
Sheets("sheet1").Range("myResult").Value = Sheets("sheet2").Range("myInput").Value
无论您现在插入多少列或行,上面的代码总是会找到相同的单元格。
或者我是否误解了这个问题?
如果这些范围A1
和A5
实际上始终位于表格中的相同位置,例如右下角,然后解决方案会有所不同。