Excel VBA如何在插入新行时防止搞砸?
说我在macros观上有这样的一行:
Sheets("sheet1").Range("A1").Value = Sheets("sheet2").Range("A5").Value
我怎样才能编程(只通过VBA),使得如果行或列被插入到A1
和A2
之间, A1
, B2
之间的表1,它不会混乱,因为行号被改变?
避免这些问题的标准方法是使用Named ranges
。
如果A1
是一个结果的重要位置,它可以被称为“myResult”,如果A5
是一个重要的input地方,那么它可以被称为“myInput”。 你的代码会变成:
Sheets("sheet1").Range("myResult").Value = Sheets("sheet2").Range("myInput").Value
无论您现在插入上面的代码多less列或行总是会find相同的单元格。
还是我误解了这个问题?
如果这些范围A1
和A5
实际上总是在一个表格中相同的相对位置(例如右下angular),则解决scheme将是不同的。