Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 当隐藏另一个时,是否可以始终保持在activesheet中?_Excel_Vba - Fatal编程技术网

Excel 当隐藏另一个时,是否可以始终保持在activesheet中?

Excel 当隐藏另一个时,是否可以始终保持在activesheet中?,excel,vba,Excel,Vba,我创建了一个动态工作簿,在其中我将数据放入并拉入更多包含其他来源数据的工作表。我有一个临时工作表,其中代码更新som数据,该工作表在宏运行之前是隐藏的,为了放置和提取数据,我使其可见,完成后再次隐藏。这几乎是完美的 当我隐藏它时会出现问题,那么我的最后一张工作表是自动选择的吗?我的代码完全没有任何.select或.active仍在学习中,因为代码总是从运行代码的工作表返回,这一点很重要,因为它每天都会更改名称 我似乎找不到任何解决我问题的方法,希望有人能帮助我: 正如您在以下代码中看到的,我尝试

我创建了一个动态工作簿,在其中我将数据放入并拉入更多包含其他来源数据的工作表。我有一个临时工作表,其中代码更新som数据,该工作表在宏运行之前是隐藏的,为了放置和提取数据,我使其可见,完成后再次隐藏。这几乎是完美的

当我隐藏它时会出现问题,那么我的最后一张工作表是自动选择的吗?我的代码完全没有任何.select或.active仍在学习中,因为代码总是从运行代码的工作表返回,这一点很重要,因为它每天都会更改名称

我似乎找不到任何解决我问题的方法,希望有人能帮助我:

正如您在以下代码中看到的,我尝试了以下操作:

Sheets("Temp").Cells.ClearContents
Sheets("Temp").Visible = False

'Cleans filters
ActiveSheet.ShowAllData
Application.Goto Range("A4")

Application.ScreenUpdating = True
我希望始终停留在我的活动表中示例:16是实际日期,每天都有一张工作表等。17、18等等。

您可以使用来立即重新激活工作表,如下所示:

With ActiveSheet
    OtherSheet.Visible = xlSheetVisible
    .Activate 'Immediately reactivate the ActiveSheet
End With
您可能需要切换Application.screenUpdate,这样您就不会看到其他工作表的闪烁

但是,为什么需要显示工作表才能从中复制数据?如果您是您所说的已排序的对象,那么您应该能够使用隐藏的工作表执行大多数操作,例如HiddenSheet.RangeA1:B3.Copy

另一方面,非常隐藏的工作表有几个限制-例如,您不能删除非常隐藏的工作表。

您可以使用来立即重新激活工作表,如下所示:

With ActiveSheet
    OtherSheet.Visible = xlSheetVisible
    .Activate 'Immediately reactivate the ActiveSheet
End With
您可能需要切换Application.screenUpdate,这样您就不会看到其他工作表的闪烁

但是,为什么需要显示工作表才能从中复制数据?如果您是您所说的已排序的对象,那么您应该能够使用隐藏的工作表执行大多数操作,例如HiddenSheet.RangeA1:B3.Copy


另一方面,一个非常隐蔽的表单有几个限制-例如,无法删除非常隐藏的工作表。

在隐藏其他工作表之前存储活动工作表,然后在隐藏后返回存储的工作表。将Mysheetvariable设置为字符串Mysheetvariable=thisworkbook.activesheet.name“do some code”thisworkbook.worksheetsMysheetvariable。选择此选项将执行以下操作:trick@Luuklag为什么不把我的表弄暗工作表:Set Mysheet=thiswook.ActiveSheet:“执行一些代码:Mysheet.Select?@Chronocidal是的,这同样有效。在隐藏其他工作表之前存储活动工作表,然后在隐藏其他工作表之后返回存储的工作表。将Mysheetvariable设置为字符串Mysheetvariable=thiswook.ActiveSheet.name”“执行一些代码”thisworkbook.WorksheetMysheetVariable.select此选项将执行以下操作:trick@Luuklag为什么不将Mysheet设置为工作表:Set Mysheet=thiswoolk.ActiveSheet:“执行一些代码:Mysheet.Select?@Chronocidal是的,这同样有效。哦,天哪,我太不整洁了!我不知道有可能把数据拉到一个隐藏的表格里,我也从来没有试过。。。该死的!我在网上读到,你不能使用隐藏的表单,所以最好的方法是隐藏和取消隐藏它们。非常感谢你帮助我,这太完美了!还有很多额外的例子。祝你周末愉快。哦,我的天啊,我真是衣冠楚楚!我不知道有可能把数据拉到一个隐藏的表格里,我也从来没有试过。。。该死的!我在网上读到,你不能使用隐藏的表单,所以最好的方法是隐藏和取消隐藏它们。非常感谢你帮助我,这太完美了!还有很多额外的例子。祝你周末愉快。