簡體   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