Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.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 Formula_Excel 2010 - Fatal编程技术网

Vba 如何将复制的数据粘贴到下一个空单元格

Vba 如何将复制的数据粘贴到下一个空单元格,vba,excel,excel-formula,excel-2010,Vba,Excel,Excel Formula,Excel 2010,我需要将复制的数据粘贴到下一个空单元格。 我已经完成了复制数据的代码。我在粘贴它时遇到了麻烦。下面是我的代码: Dim eRow As Long Workbooks("Daily Task Tracker - March 2015.xlsx").Activate Worksheets("Tasks").Activate Sheets("Tasks").Select eRow = WorksheetFunction.CountA(Range("A:A")) + 1 Cells(eRow,

我需要将复制的数据粘贴到下一个空单元格。
我已经完成了复制数据的代码。我在粘贴它时遇到了麻烦。下面是我的代码:

Dim eRow As Long
 Workbooks("Daily Task Tracker - March 2015.xlsx").Activate
 Worksheets("Tasks").Activate
 Sheets("Tasks").Select
 eRow = WorksheetFunction.CountA(Range("A:A")) + 1
 Cells(eRow, "A:G").PasteSpecial xlPasteValuesAndNumberFormats
有人能帮我找到语法上的错误吗

OP评论中的代码:

'Copy Data
Sheets("Daily Tasks Tracker").Select
Range("D8").Select
ActiveCell.Offset(1, 0).Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy

出于所有目的,如果要粘贴从一系列单元格复制的数据块,则只需指定左上角的单元格

Dim eRow As Long
with Sheets("Tasks")
    eRow = WorksheetFunction.CountA(.Range("A:A")) + 1
    .Cells(eRow, "A").PasteSpecial xlPasteValuesAndNumberFormats
end with
不带
的替换选择

通常,最好是从下往上看,然后向下移动一个单元格到第一个未使用的单元格,以找到最后使用的单元格。自上而下查看或计算带有值的单元格可能会进入空白单元格,从而产生错误结果

Dim w As Long, h As Long
With Sheets("Daily Tasks Tracker")
    'D9 is Range("D8").Offset(1, 0).Select
    w = .Range(.Range("D9"), .Range("D9").End(xlToRight)).Cells.Count
    h = .Range(.Range("D9"), .Range("D9").End(xlDown)).Cells.Count
    .Range("D9").Resize(h, w).Copy _
      Destination:=Sheets("Tasks").Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
End With

如果您正在粘贴
xlpastevalues和numberformats
,那么您几乎只是在执行标准的复制和粘贴。这更容易编码,您不必添加
应用程序。CutCopyMode=False
来停止复制模式。

复制源在哪里?你在没有做任何事情的情况下运行了两个工作表,然后粘贴到第三个工作表中,但没有提到数据的复制来源。这就是我从源复制数据的方式<代码>'复制数据表(“日常任务跟踪器”)。选择范围(“D8”)。选择ActiveCell.Offset(1,0)。选择范围(Selection,Selection.End(xlToRight))。选择范围(Selection,Selection.End(xlDown))。选择范围。复制
@Jeeped-
工作表函数。CountA(.Range(“A:A”))+1
-不能保证列A中的最后一行,使用
单元格(Rows.Count,“A”)。结束(xlUp)。行+1
?@daveExcel-是的,我正在准备一个没有
的替代行。选择
,但我必须等到从原始副本中获得代码。@xtina1231-。