删除单元格而不移动它们
我有vbamacros删除select的单元格。 它删除后自动移动单元格。 我不想让单元格向上移动,因为我在单元格下面有一个图表,如果它们移动了,所有东西都会受到干扰。
这是我用来删除单元格的代码
ActiveSheet.UsedRange.Select ActiveSheet.Range("C2:H8").Select Selection.Delete
让我知道如何删除它们,而不移动。
如果我理解正确,我认为使用ClearContents而不是删除应提供您正在寻找的function。
http://msdn.microsoft.com/en-us/library/office/aa223828%28v=office.11%29.aspx
或者,您可以指定如何更改单元格,如果这更适合您正在尝试执行的操作:
来自: http : //msdn.microsoft.com/en-us/library/office/aa223863%28v=office.11%29.aspx
expression.Delete(SHIFT)
expression式必需。 一个返回一个Range对象的expression式。
Shift可选变体。 仅用于Range对象。 指定如何移动单元格以replace已删除的单元格。 可以是以下XlDeleteShiftDirection常量之一:xlShiftToLeft或xlShiftUp。 如果省略此参数,Microsoft Excel根据范围的形状决定。
你可以使用
ActiveSheet.Range("C2:H8").ClearContents
这将清空内容,而不会移动任何东西。
你有没有考虑过ClearContents?
ActiveSheet.Range("C2:H8").ClearContents
如果您在合并单元格时遇到问题,请尝试:
ActiveSheet.Range("C2:H8").Value = ""