Excel 使用变量复制选定范围的数据

Excel 使用变量复制选定范围的数据,excel,vba,Excel,Vba,嗨,我正在尝试尽可能高效地将一系列数据从一个工作表复制到另一个工作表 我创建了一段代码,将变量范围存储到变量中,然后我尝试使用此变量直接复制到另一个工作表中的单元格。在尝试这一点时,我得到一个编译错误,任何帮助将不胜感激。我对编写新的VBA代码相当陌生,并经历了一个漫长的过程来加速宏记录器编写的代码 谢谢 请查找以下代码: Sub M_MigrateAssessmentDates() ' ' M_MigrateAssessmentDates Macro ' ' Select and cop

嗨,我正在尝试尽可能高效地将一系列数据从一个工作表复制到另一个工作表

我创建了一段代码,将变量范围存储到变量中,然后我尝试使用此变量直接复制到另一个工作表中的单元格。在尝试这一点时,我得到一个编译错误,任何帮助将不胜感激。我对编写新的VBA代码相当陌生,并经历了一个漫长的过程来加速宏记录器编写的代码

谢谢

请查找以下代码:

Sub M_MigrateAssessmentDates()
'
' M_MigrateAssessmentDates Macro
'

'   Select and copy data - code checked for referencing issues 3/10/2019
    Dim myRange As Range
    Set myRange = Range("A2", "E" & Cells(Rows.Count, 1).End(xlUp).Row)
    AssData.Select.myRange.Copy AssDates.Range("A2")

End Sub

好。。。。。您正在使用变量作为select方法的方法。没有道理吗?这是不应该的
Rng1.Value=Rng2。Value
是您需要执行的操作。
AssData
是工作表的代码名吗?我想不会,因为你是VBA新手。。。我没有看到它被声明或设置在任何地方。顺便说一句,AssData和AssDates都是工作表的代码名,我不确定如何将数据复制到AssDates?AssData是要复制的工作表frm,AssDates是要复制到的工作表,我已经对所有工作表进行了编码,以防有人在我不在时更改名称。嗯,好的。因此,您需要在设置工作表时使用工作表限定
myRange
,而不是在设置之后
Set myRange=AssData.Range(…)
我在粘贴数据时仍遇到问题,源单元格是excel表格的一部分,当我粘贴到其中时,它受到excel表格中空行数的限制。因此,例如,如果表中有830行数据和700行空行可用,则只有700行数据将被复制。我可以增加表中的空行数,但这并不理想。是否有一种方法可以在复制行的同时将行粘贴到表中。我有一个宏运行使用它的自动代码,似乎工作使用粘贴作为值功能?