【问题标题】:In Visual Basic (Excel) Columns select too many columns在 Visual Basic (Excel) 列中选择太多列
【发布时间】:2016-08-11 18:24:28
【问题描述】:

在 Excel 宏中,我尝试使用代码选择和隐藏多个列

Columns("D:N").Select
Selection.EntireColumn.Hidden = True

但由于未知原因,Columns("D:N").Select 选择了 D 到 V 列(包括 D 列)。我看了看,没有合并的单元格,即使有,也不应该阻止我隐藏选定的(预期的)列。

任何提示为什么 Columns("D:N").Select 选择列 D 到 V 包括在内?提前致谢。

【问题讨论】:

  • 如果你这样做Columns("D:N").EntireColumn.Hidden = True会发生什么?
  • 您的列是否被隐藏了?
  • 只用一个2行代码的宏测试,用空白纸
  • 您可以尝试使用 'F8' (Windows) 或通过 Debug>Step Into 运行代码并查看它是否正确选择。如果可能的话,我个人会非常努力地避免使用“选择”,因为它通常似乎不起作用。
  • Columns("D:N").EntireColumn.Hidden = True 有效。我怀疑我永远不会知道它最初不起作用的是什么。谢谢。

标签: excel vba select


【解决方案1】:

您可能有水平合并的单元格从 Col N 延伸到 col V

【讨论】:

    【解决方案2】:

    我在空白纸上的空白宏中运行了这两行,它运行良好,所以我认为问题出在代码的其他部分

    你能试着把它放在这两行之前吗?

    SendKeys "{ESC}"
    

    如果这可行,那么很可能您的宏的早期部分有一个 SELECT 语句卡住了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-19
      • 1970-01-01
      • 2015-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多