将工作表1某一区域的数值复制粘贴到另一工作表2某一区域的第一空白行,用VBA语言怎么表示?

 我来答
xiangyonghua2
推荐于2017-12-15 · 超过17用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:32.3万
展开全部
Sub copytest()
dim i&
For i = 1 To Sheets(2).Rows.Count '循环表2的所有行
If Sheets(2).Range("A" & i) = "" Then ’从上到下判断单元格A1是否为空
’如果为空,则把表1的单元格A1:D10复制到表2的空行和相同范围的单元格内
Sheets(1).Range("A1:D10").Copy Sheets(2).Range("A" & i)
Exit For '结束循环
End If
Next
End Sub
COUNTIFABS
2013-12-16 · TA获得超过2154个赞
知道大有可为答主
回答量:1594
采纳率:55%
帮助的人:1234万
展开全部
workbooks("1.xls").sheets(1).range("a1:a100").copy workbooks("2.xls").sheets(1).range("a1")
追问
但是我的困难是如果目标表A1中已有内容,我需要让原始表在目标表中的A2开始复制

如果目标表A1,A2,A3中已有内容,我则需要让原始表在目标表中的A4开始复制(原始表中需要复制的内容只有一行A1:N1)
因为我不能让原始表的内容覆盖到目标表中的任何一项,所以需要从目标表中的第一空白行开始复制。
感谢帮助
追答

这样就可以了,这个是最后一个空行,可以吗?


Sub aa()
Workbooks("1.xls").Sheets(1).Range("a1:a100").Copy Workbooks("2.xls").Sheets(1).Range("a65535").End(3).Offset(1, 0)
End Sub

 


或看下是不是这种,具体见附件!

Sub aa()
Dim x As Integer
For x = 1 To Sheets("Sheet2").UsedRange.Rows.Count
   If Sheets(2).Range("A" & x) = "" Then
              Sheets(1).Range("A1:c1").Copy Sheets(2).Range("A" & x)
       Exit For
   End If
Next x
End Sub


已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式