无法添加到ActiveWindow.SelectedWorksheets

时间:2016-07-28 14:57:04

标签: excel excel-vba vba

我正在使用代码

Worksheet.Select Replace:=False 

它不会添加到ActiveWindow.SelectedWorksheets

以下内容不适用于所有环境。

For i = 2 To ActiveWorkbook.Worksheets.Count
    ActiveWorkbook.Worksheets(i).Select Replace:=False
Next i

ActiveWindow.SelectedSheets.PrintPreview 

打印预览仅显示1页(第一张/活动表)。如果我请求Count,它也是1,但是我得到了超过1个工作表(实际上超过10个

看起来它确实与Windows更新有关(因为用户突然体验它而没有对宏进行任何更改)。

最近有没有人解决同样的问题?

如何解决此问题?

1 个答案:

答案 0 :(得分:1)

用户在我们的工作簿中报告了一个问题,但在我安装了最新更新之前,我的机器上没有显示问题。似乎问题出在Replace:= False。原文如下。

Worksheets("Proposal").Select Replace:=False
Worksheets("Terms").Select Replace:=False
Worksheets("Soft Maint").Select Replace:=False
Worksheets("Emerg Servi").Select Replace:=False
Worksheets("Spl Prov").Select Replace:=False
Worksheets("Equip List").Select Replace:=False
If Application.Sum(Worksheets("Quote Info").Range("B23")) = 1 Then Sheets("FA T&I").Select Replace:=False
If Application.Sum(Worksheets("Quote Info").Range("B23")) = 2 Then Sheets("FA T&M").Select Replace:=False

经过多次尝试,我想出了这个并且它有效。不知道为什么,但我不是抽屉里最锋利的刀。我只改变了前几行,但我认为如果它有所帮助,我会通过整个事情。

Sheets(Array("Proposal", "Terms", "Soft Maint", "Emerg Servi", "Spl Prov", "Equip List")). _
    Select Replace:=False
If Application.Sum(Worksheets("Quote Info").Range("B23")) = 1 Then Sheets("FA T&I").Select Replace:=False
If Application.Sum(Worksheets("Quote Info").Range("B23")) = 2 Then Sheets("FA T&M").Select Replace:=False

希望这有帮助