【问题标题】:How to activate a specific worksheet in different worksheet in Excel如何在 Excel 的不同工作表中激活特定工作表
【发布时间】:2015-07-06 08:22:42
【问题描述】:

在一个 sub 中,我正在解析 activesheet 并创建一个新工作表(在一个新工作簿中), 完成此子后,我需要再次激活旧表 所以我创建了

Dim sourceSheet As Worksheet
Set sourceSheet = ActiveSheet
Analysis(sourceSheet)

在下一个将处理此工作表的子程序中,我将 sourceSheet 作为变量发送

Public Sub Analysis(sourceSheet As Worksheet)
Set ActiveSheet = sourceSheet

它抛出运行时错误 438

如何使旧工作表再次处于活动状态?使用父子创建新工作簿后

【问题讨论】:

  • 由于您已经为您的工作表声明了一个工作表变量,我建议您重新编写代码以避免使用Acitve*。当您的代码变得更加复杂并且您无法跟踪当前处于活动状态的工作表时,它将有助于避免各种错误。这样做非常直截了当,不需要花费太多时间或精力来获得潜在回报。

标签: vba excel


【解决方案1】:

我不相信你真的可以设置ActiveWorksheet,因为那是只读的。

我认为不是:

Set ActiveSheet = sourceSheet

你想要:

sourceSheet.Activate

【讨论】:

    猜你喜欢
    • 2011-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-27
    • 1970-01-01
    • 2015-03-07
    • 1970-01-01
    相关资源
    最近更新 更多