Vba Excel上的联合错误消息
我收到一条错误消息,上面说 运行时错误1004':对象“u Global”的方法“union”失败 它指向行Vba Excel上的联合错误消息,vba,excel,Vba,Excel,我收到一条错误消息,上面说 运行时错误1004':对象“u Global”的方法“union”失败 它指向行Set unioned=Union(unioned,c) 有什么建议吗 Option Explicit Private Sub HideRows_Click() With Application .Calculation = xlCalculationManual .ScreenUpdating = False .DisplayS
Set unioned=Union(unioned,c)
有什么建议吗
Option Explicit
Private Sub HideRows_Click()
With Application
.Calculation = xlCalculationManual
.ScreenUpdating = False
.DisplayStatusBar = False
.EnableEvents = False
End With
'On Error Resume Next
Dim ws As Worksheet
For Each ws In Worksheets
Select Case ws.name
Case "Sheet1", "Sheet2", "Sheet3" 'sheets to exclude
'do nothing
Case Else 'hide rows on these sheets
Dim unioned As Range
Dim c As Range
For Each c In ws.Range("AJ16:AJ153,AJ157:AJ292")
If Len(c.Value2) = 0 Then
If unioned Is Nothing Then
Set unioned = c
Else
Set unioned = Union(unioned, c)
End If
End If
Next c
unioned.EntireRow.Hidden = True
End Select
Next ws
With Application
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
.DisplayStatusBar = True
.EnableEvents = True
End With
End Sub
你知道它是在第一个还是第二个工作表循环中吗?我想你需要在
unioned.EntireRow.Hidden=True
之后添加Set unioned=Nothing
,因为它试图创建两个不同工作表的联合范围,这是不可能的。谢谢Scott。错误消失了,但不幸的是代码没有达到我想要的效果。列AJ中具有0的行仍然存在且未隐藏。有什么想法吗?谢谢他们属于第二组还是第一组,或者两者都属于。我猜它对第一组有效,但对第二组无效。有没有办法知道它发生在哪一组?所有图纸都没有隐藏的行