Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 复制区域和粘贴区域不为';同样大小的错误不是吗?_Vba_Excel_Excel 2010 - Fatal编程技术网

Vba 复制区域和粘贴区域不为';同样大小的错误不是吗?

Vba 复制区域和粘贴区域不为';同样大小的错误不是吗?,vba,excel,excel-2010,Vba,Excel,Excel 2010,我希望VBA在Sheet1中找到名为“Apple”(第a1行)的单元格标题,并将该数据粘贴到Sheet2中名为“Orange”的单元格标题中 Sheet1 Sheet2 Apple Orange 1 2 3 4 我试图不包括单元头,所以它只抓取号码 你想做点什么吗 Sheet1.Rows("1:1").Find(What:="Apple", After:=ActiveCell, LookIn:=xlFormulas, _ LookAt:=xlWhole, S

我希望VBA在Sheet1中找到名为“Apple”(第a1行)的单元格标题,并将该数据粘贴到Sheet2中名为“Orange”的单元格标题中

Sheet1     Sheet2

Apple      Orange
1
2
3
4
我试图不包括单元头,所以它只抓取号码

你想做点什么吗

Sheet1.Rows("1:1").Find(What:="Apple", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
Selection.EntireColumn row-1.Copy sheet2.range("a2")
类似于
entireclumn row-1
这样它就不会复制头单元格…

不知道我在做什么,但是帮助会很棒!

使用此命令:
c=ActiveCell.Column
您将
c
设置为当前活动单元格的整列。接下来,当您使用
s1.Columns(c)时,复制s2.Range(“a2”)
您正在复制存储在
c
中的整个列,然后尝试将其粘贴到指定列范围(
a2
)的第二个单元格中。这会导致该列的单元格总是比复制到剪贴板的单元格少一个。

很抱歉更正,但唯一负责的位是s1。列(c).c=ActiveCell.Column没有任何影响。c=1也会有完全相同的影响。是的,但这正是我感觉到误解发生的地方。我读这篇文章时,他们假设只会在他们选择的地方复制列,但随后他们在复制/粘贴命令中传递了整个列的引用更新我的答案,使之更清楚。很好。我看到了另一种情况:我的印象是OP想要复制上面“Find”的范围。更具体地说,他想要复制这个范围的一列(大概是由不同的列组成)。他很可能对列(c)的确切定义有误解也是。他认为只要执行Find s1。列(c)就可以计算输出范围,而不是整个电子表格。@pnuts这是一个聪明的方法。当然,假设
a1
中没有重要数据。在得到答案后,您无法完全更改问题(顺便说一句,在我看来,你的新问题已经解决了)。我现在将删除我的答案(因为不喜欢你的态度)。@pnuts他是否选择了一个建议写“;”在VBA行的末尾?!(并说它不起作用;让另一个回答者提供一个有效的答案?)哇!现在我明白了很多,谢谢:)