请帮我优化VBA代码,一运行堆栈溢出,Dim o As Range: Set o = Range("I2:J24"),提示这句,谢谢

PrivateSubWorksheet_Change(ByValTargetAsRange)DimXDimX1DimX2DimX3DimoAsRange:Seto=Ran... Private Sub Worksheet_Change(ByVal Target As Range)
Dim X
Dim X1
Dim X2
Dim X3
Dim o As Range: Set o = Range("I2:J24")
X = Target.Row
If Cells(X, 3) <> "" Then
X1 = Application.VLookup(Range("A" & X), o, 2, False)
X2 = Application.VLookup(Range("D" & X), o, 2, False)
X3 = Cells(X, 5) / X2 * X1
Cells(X, 7) = (X3 - Cells(X, 6)) * (Cells(X, 3) - Cells(X, 2)) * 1440 / 60
Else
Cells(X, 7) = 0
End If
End Sub
展开
 我来答
百度网友59e329458
2012-04-05 · TA获得超过1197个赞
知道小有建树答主
回答量:246
采纳率:100%
帮助的人:151万
展开全部
这句 Dim o As Range: Set o = Range("I2:J24") 改成:
Dim o As Range
Set o = Range("I2:J24")
追问
按您说的,改为
Dim o As Range
Set o = Range("I2:J24")
后,又提示Set o = Range("I2:J24") 溢出堆栈了。。。
追答
方便的话表格发给我看看,kanoon@unitex.biz
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式