Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.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 将值从第1页剪切并粘贴到第2页的下一行_Vba_Excel - Fatal编程技术网

Vba 将值从第1页剪切并粘贴到第2页的下一行

Vba 将值从第1页剪切并粘贴到第2页的下一行,vba,excel,Vba,Excel,我正在尝试从工作表1上的一系列单元格到工作表2上的下一个可用行剪切和通过值。我所看到的所有指南和建议都是关于复制、粘贴和同一张纸的 第1页上的范围是要剪切的E5-H5,而不是复制,然后粘贴到第2页的单元格E7-H7或下面的下一行,每当有人输入数据时,我需要第2页来保存它。下面的代码将复制您的范围,并在第2页的E列中查找要粘贴的第一个空单元格(从下到上)。希望这有帮助 Sub CutPaste() Dim Lastrow As Long ThisWorkbook.Sheets("Sheet1"

我正在尝试从工作表1上的一系列单元格到工作表2上的下一个可用行剪切和通过值。我所看到的所有指南和建议都是关于复制、粘贴和同一张纸的


第1页上的范围是要剪切的E5-H5,而不是复制,然后粘贴到第2页的单元格E7-H7或下面的下一行,每当有人输入数据时,我需要第2页来保存它。

下面的代码将复制您的范围,并在第2页的E列中查找要粘贴的第一个空单元格(从下到上)。希望这有帮助

Sub CutPaste()

Dim Lastrow As Long

ThisWorkbook.Sheets("Sheet1").Range("E5:H5").Copy
Lastrow = Sheets("Sheet2").Cells(Rows.Count, 5).End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial

End Sub

由于您不熟悉堆栈溢出,可能也不熟悉vba,所以请尝试遵守Peh上面的评论。你的问题,虽然不是特别明确,但很容易在某些部分被谷歌搜索到。此外,如果这回答了您的问题,请勾选它

不要选择。我发布这个答案更多的是为了帮助@KoderM16改进他们的方法,而不是回答原来的问题:

Sub CutPaste()
ThisWorkbook.Sheets("Sheet1").Range("E5:H5").Copy
Sheets("Sheet2").Cells(Rows.Count, 5).End(xlUp).Offset(1, 0).PasteSpecial
End Sub
此外,这也没有意义,因为它返回true或false(很可能总是true,因为它实际上可以选择该地址):

如果要将行分配给
Lastrow
,则不需要使用
Lastrow
,而是希望在末尾使用.row而不是.select


按照代码的原样,lastrow很可能总是-1,因为这是True的值

堆栈溢出不是代码编写服务。人们来到这里是因为他们的代码有一些特殊的问题。还有其他网站可以帮助您学习如何编写VBA。谢谢您的帮助。我是新来的,为误用网站道歉。谢谢你的帮助。我是新来的,并为误用网站道歉。我试过用谷歌搜索我需要的宏的不同部分,不幸的是找不到我想要的,因为我在谷歌找到的只是如何复制和粘贴。我会把我试着输入的代码贴出来,但我担心会有太多的错误,这会浪费每个人的时间去破解它。我已经尝试了您为我提供的代码,但发现它不起作用。我得到错误1004。不确定这到底是什么意思。请不要使用“选择”。我将在下面对此进行更改,但mark KoderM16的正确性与他首先帮助您的一样,我只是拉出了select并清理了代码。@skip继续使用vba和编码,很快您就可以像阅读书籍一样开始阅读代码了。“我只在里面呆了一个多月,事情开始变得容易起来了。”丹多诺格:谢谢你!我很早就在别的地方看到了Select and Selection.paste这个特殊的方法,我还没能改掉这个习惯哈哈
Lastrow = Sheets("Sheet2").Cells(Rows.Count, 5).End(xlUp).Offset(1, 0).Select