繁体   English   中英

如何将行和列的可变范围从一个工作簿复制到另一个?

[英]How to Copy a Variable Range of Rows and Columns from one Workbook to Another?

我正在使用一个Excel高级文件从外部工作簿中提取数据。 当前,我的宏占行的可变范围,但我无法弄清楚如何也占行的可变范围。

下面的代码要求我输入要复制的一系列单元格。 理想情况下,我想删除J,这样我就不仅限于外面的一栏,但我无法通过研究弄清楚这一点。 为了使事情变得更复杂,我在K列和L列中都有引用A列中的值的公式,但这并不是一个单独的问题。

Sub Copy_Raw_Data()

  Application.ScreenUpdating = False

  Dim CopySheet As Worksheet
  Dim pasteSheet As Worksheet

  Set CopySheet = Worksheets("Raw Data Sheet1")
  Set pasteSheet = Worksheets("Master Sheet")

  Workbooks.Open ("S:\Raw Data.xlsx")

  With Sheets("Raw Data Sheet1").Range("A2:J" & Cells(Rows.Count, "J").End(xlUp).Row).Copy

  Workbooks("Master.xlsm").Activate

  pasteSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
  Application.CutCopyMode = False
  Application.ScreenUpdating = True

  End With

  Workbooks("Raw Data.xlsx").Save
  Workbooks("Raw Data.xlsx").Close

  Worksheets("Master Sheet").Select

End Sub

我希望副本将可变范围的行和列从“原始数据”工作簿传输到“主”工作簿。 更进一步,我希望最后两列中的公式随着新数据的变化而变化。

评论示例:

dim sr as long, er as long, sc as long, ec as long
sr = 2 'starting row
er = cells(rows.count,1).end(xlup).row 'end row
sc = 1 'starting column ("A")
ec = cells(1, rows.count).end(xltoleft).column 'end column
'utilize above variables
Range(Cells(sr,sc),Cells(er,ec)).Value = ""

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM