为什么选择列(“F:F”)。选择选择整个工作表?

时间:2014-01-06 15:58:12

标签: excel vba excel-vba select

我正在使用宏来对我们组织中重复出现的文档进行大量格式化。当我运行宏时,格式化完成但内容被删除...这个宏代码是使用Record选项编写的。

使用步骤我确定问题来自这些命令:

Columns("F:F").Select 
Selection.Delete Shift:=xlToLeft

确定的问题: 在单步执行时,我注意到命令:

  Columns("F:F").Select 

选择工作表中的所有单元格。下一个命令删除工作表内容。知道可能导致这种情况的原因吗?

1 个答案:

答案 0 :(得分:2)

正如用户simoco建议我测试的是,合并行中的所有列可能会导致行为:

Sub WhyIsWholSheetDeleted()
    Columns("F:F").Select
    Selection.Delete Shift:=xlToLeft
End Sub

我合并了第10行中的每个单元格并执行了上述功能。它会删除工作表中的每个单元格。

所以你必须找到宏合并单元格的位置。

您可以查看代码中的内容:

 Rows("12:12").Select
 With Selection
    .MergeCells = True
 End With