VBA运行find出现错误1004

Setx=Sheets("2").Range("A"&i)Sheets("1").SelectCells.Find(What:=x,After:=ActiveCell).... Set x = Sheets("2").Range("A" & i)
Sheets("1").Select
Cells.Find(What:=x, After:=ActiveCell).Activate
到最后一句出错了,怎么解?
Sheets("2").Select
y = 1202
For i = 2 To y
Range("A" & i).Select
a1 = ActiveCell.Row
Set x = Sheets("2").Range("A" & i)
Sheets("1").Select
Cells.Find(What:=x, After:=ActiveCell).Activate‘到这停的,怎么解决?
a2 = ActiveCell.Row
Set L = Sheets("1").Range("B" & a2)
Sheets("2").Select
Range("E" & a1) = L
Next i
展开
 我来答
cnbubble
2018-11-26 · TA获得超过2606个赞
知道大有可为答主
回答量:1990
采纳率:83%
帮助的人:740万
展开全部

运行未发现错误,如上。

注意:工作表的名称应该有 1、2,而不是 Sheet1、Sheet2

如果用序号(第几个)来选定表,应该用  Sheets(1)  、Sheets(2)  ,即不加引号

安徽新华电脑专修学院
2018-11-23 · 百度知道合伙人官方认证企业
安徽新华电脑专修学院
安徽新华电脑专修学院始建于1988年,隶属于新华教育集团,是国家信息化教育示范基地、中国 IT 教育影响力品牌院校.
向TA提问
展开全部
i = Range("b65536").End(xlUp).Row - 9 '在已使用区域最末一行添加
是这一行的问题.
如果Range("b65536").End(xlUp).Row 小于或等于9 的话. i 就小于=0 了
这样 对于下面的 Cells(i, 2).EntireRow.Insert 来说 就会产生错误.
因为cells对象要求的行和列参数必须是大于 0 的.
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
恒毅闯天涯
2018-11-23 · 超过13用户采纳过TA的回答
知道答主
回答量:154
采纳率:0%
帮助的人:30.2万
展开全部
cells前面要加上 那个表
追问
不用加吧,加了还要定义什么的
前面已经选了工作表,可以不加吧
不用加吧,加了还要定义什么的
前面已经选了工作表,可以不加吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式