请问在VBA中我要复制sheet2中的Range(Cells(1, 1), Cells(3, 28))到同一个文件的sheet1中,为什么出错
Sheet1.Range(Cells(6,1),Cells(8,28)).Value=Sheet2.Range(Cells(1,1),Cells(3,28)).Value...
Sheet1.Range(Cells(6, 1), Cells(8, 28)).Value = Sheet2.Range(Cells(1, 1), Cells(3, 28)).Value
提示的错误是方法“range”作用于对象“worksheet”时失败。
请高手指教 展开
提示的错误是方法“range”作用于对象“worksheet”时失败。
请高手指教 展开
展开全部
你标定单元格区域时出错了:
Sheet1.Range(Cells(6, 1), Cells(8, 28))
应该写为:
Sheet1.Range(Sheet1.Cells(6, 1),Sheet1.Cells(8, 28))
全部:
Sheet1.Range(Sheet1.Cells(6, 1), Sheet1.Cells(8, 28)).Value = Sheet2.Range(Sheet2.Cells(1, 1), Sheet2.Cells(3, 28)).Value
Sheet1.Range(Cells(6, 1), Cells(8, 28))
应该写为:
Sheet1.Range(Sheet1.Cells(6, 1),Sheet1.Cells(8, 28))
全部:
Sheet1.Range(Sheet1.Cells(6, 1), Sheet1.Cells(8, 28)).Value = Sheet2.Range(Sheet2.Cells(1, 1), Sheet2.Cells(3, 28)).Value
展开全部
你的语句只为range指定了父对象为sheet1、sheet2.而没有为cells指定父对象。
而没有指定父对象的cells默认是当前激活工作表的cells 如果cells的的父对象与你指定的range的父对象不相符时会报错。
完整的指定父对象的语句如下:
Sheet1.Range(sheet1.Cells(6, 1),sheet1. Cells(8, 28)).Value = Sheet2.Range(sheet2.Cells(1, 1), sheet2.Cells(3, 28)).Value
而没有指定父对象的cells默认是当前激活工作表的cells 如果cells的的父对象与你指定的range的父对象不相符时会报错。
完整的指定父对象的语句如下:
Sheet1.Range(sheet1.Cells(6, 1),sheet1. Cells(8, 28)).Value = Sheet2.Range(sheet2.Cells(1, 1), sheet2.Cells(3, 28)).Value
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个不能一气呵成的,只能一个一个来!
Sheet1.Cells(6, 1).Value = Sheet2.Cells(1, 1).Value
Sheet1.Cells(8, 28).Value = Sheet2.Cells(3, 28).Value
Sheet1.Cells(6, 1).Value = Sheet2.Cells(1, 1).Value
Sheet1.Cells(8, 28).Value = Sheet2.Cells(3, 28).Value
追问
你好,我是想复制一个区域,就比如上面的,Cells(1,1)到Cells(3,8)这个区域(应该A1:AB2这个区域),不只是两个单元格,能否用cell实现呢?
我尝试了下,在同一个工作簿主这个命令是不出错的,但是如果在不同的工作簿,就像在sheet1和sheet2之间用,就报错。
追答
那个更应该用Range属性来确定区域;
你可以这样,用录制宏的办法;
1,使用EXCEL的菜单,[工具] -- [宏] -- [录制新宏] -- [确定]。
2,切换到工作表“Sheet2”,选中区域"A1:H3",单击[复制],切换到工作表“Sheet1”,选中单元格“A1”,单击[粘贴]。
3,使用EXCEL的菜单,[工具] -- [宏] -- [停止录制]。
4,使用EXCEL的菜单,[工具] -- [宏] -- [宏],选中刚才录制的宏,单击[编辑],就可以看到刚才执行的操作的完整宏了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询