VBA 方法range作用于对象_worksheet时失败
IfCells(i,5)=Cells(i+1,5)ThenSheet1.Range(Cells(i,3),Cells(i,5)).Copy:_Sheets("Sheet"...
If Cells(i, 5) = Cells(i + 1, 5) Then Sheet1.Range(Cells(i, 3), Cells(i, 5)).Copy: _
Sheets("Sheet" & 3 + sheetag).Cells(i - Tag, 1).PasteSpecial Paste:=xlPasteValues
如果是创建的宏(非个人宏工作簿),语句可以正常执行。但是一旦保存为个人宏工作簿就会有方法range作用于对象_worksheet时失败的错误提示。请高人指点。 展开
Sheets("Sheet" & 3 + sheetag).Cells(i - Tag, 1).PasteSpecial Paste:=xlPasteValues
如果是创建的宏(非个人宏工作簿),语句可以正常执行。但是一旦保存为个人宏工作簿就会有方法range作用于对象_worksheet时失败的错误提示。请高人指点。 展开
1个回答
展开全部
If Cells(i, 5) = Cells(i + 1, 5) Then Sheet1.Range(Cells(i, 3), Cells(i, 5)).Copy
把这句改成 下面的试试
If Cells(i, 5) = Cells(i + 1, 5) Then Sheet1.Range(Sheet1.Cells(i, 3), Sheet1.Cells(i, 5)).Copy
把这句改成 下面的试试
If Cells(i, 5) = Cells(i + 1, 5) Then Sheet1.Range(Sheet1.Cells(i, 3), Sheet1.Cells(i, 5)).Copy
追问
改成你提供的语句可以执行了,请问原因是出错在哪里呢?
追答
原因我没研究过,个人经验,当你用range(cell(),cell()) 这样的形式的时候,如果cells() 的两个参数有变量的时候,前面加上cells() 的父对象就不会出错。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询