[我在一张纸WEstimate
上创建了3个速度计,但是当我在另一张纸[FCalc
]上更改信息时,得到一个]
运行时错误438。对象不支持此属性或方法
我也尝试过使用Worksheets("WEstimate")
,但是每当我在不需要的WEstimate
工作表中输入信息时,都会一直将我发送到FCalc
工作表。希望有足够的信息。我不知道我在做什么,因此非常感谢您的帮助。谢谢。
Private Sub Worksheet_Calculate()
Application.ScreenUpdating = True
Worksheets("WEstimate").Calculate
Worksheets("WEstimate").Shapes.Range(Array("Group 2394")).Select
Selection.ShapeRange.Rotation = ActiveSheet.Range("W199").Value * 247
ActiveCell.Select
Worksheets("WEstimate").Shapes.Range(Array("Group 2312")).Select
Selection.ShapeRange.Rotation = ActiveSheet.Range("W200").Value * 247
ActiveCell.Select
Worksheets("WEstimate").Shapes.Range(Array("Group 2604")).Select
Selection.ShapeRange.Rotation = ActiveSheet.Range("W202").Value * 247
ActiveCell.Select
End Sub
[假设代码位于工作表WEstimate
的后面,并且您对工作表FCalc
进行的某些操作导致WEstimate
重新计算,则错误的原因是您无法在非工作表Select
上进行某些操作-活动表。当FCalc
有效时,Selection
指的是在FCalc
上选择的任何内容。为什么使用Select
Selection
或Active*
是个坏主意。