VBA 中用 使用 RANGE 将某个区域中的数据复制到另一个工作表

Sub复制工作表内容()Windows("复制工作表内容.xls").ActivateWithWorksheets(1).Range(.Cells(4,0),.Cells... Sub 复制工作表内容()
Windows("复制工作表内容.xls").Activate
With Worksheets(1)
.Range(.Cells(4, 0), .Cells(UseRange.rows.count, 0)).copy ←应用程序定义或对象定义错误
End With
With Worksheets(1)
.Range(.cells(4,0)).select
ActiveSheet.Paste
End With
End Sub
【不用cells取未知,就没有问题,一旦用cells,不论参数是什么格式都不行,求指教!】
【即使取cells的address属性,依然1004错误。】
展开
 我来答
函安白zK
2012-06-22 · TA获得超过3994个赞
知道大有可为答主
回答量:1434
采纳率:50%
帮助的人:724万
展开全部
程序有几处错误:Cells的数字不能为零,最小为1;UseRange应该为UsedRange;Range括号内如果是用Cells的,需要有两个,一个为起始,另外一个为终止,如仅有一个Cells,则不用Range括起来。修改后程序如下。
希望讲清楚了,对你有帮助。o(∩_∩)o

With Worksheets(1)
.Range(.Cells(4, 1), .Cells(UsedRange.Rows.Count, 1)).Copy ' ←应用程序定义或对象定义错误
End With
With Worksheets(1)
.Cells(4, 1).Select
ActiveSheet.Paste
End With
wangvvei
推荐于2017-11-25 · TA获得超过304个赞
知道小有建树答主
回答量:836
采纳率:0%
帮助的人:217万
展开全部
.Range(.Cells(4, 0), .Cells(UseRange.rows.count, 0)).copy 有问题。因为CELLS(X,Y)两个参数,每个数值都必须为大于0的整数。
追问
【谢谢你的回答,修改之后,提示错误为,需要对象】
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yangliu0512
2012-06-22 · TA获得超过544个赞
知道小有建树答主
回答量:891
采纳率:0%
帮助的人:435万
展开全部
.Range(.Cells(4, 0), .Cells(.UsedRange.rows.count, 0)).copy 另外我不知道你的0是什么意思,肯定不能为0,你自己改一下

.Range(.cells(4,0)).select 这里也有错,首先0得改,然后range只有两种用法:1.range("A1")这种;2.range(cells(x,y),cells(x1,y1)),你这样为什么不直接写成.cells(4,0).select?

另外为了运行速度,请在Windows("复制工作表内容.xls").Activate前面加上一句Application.Screenupdating=False,在End With后面加一句Application.Screenupdating=True
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式