簡體   English   中英

將范圍從工作表1復制到工作表2

[英]Copy a range from sheet1 to sheet2

我對VBA還是很陌生,但我希望有人可以幫助我。 這是我想做的;

  1. 我在Sheet1中有一個范圍(“ A4:C500”),其中包含一些來自例如的空單元格。 第180行
  2. 我想將整個范圍復制到Sheet2
  3. 之后,如果我在工作表1中插入新行,例如。 “ A24:C24”,然后用值填充例如“ A24:C24”,我想首先在Sheet2的“ A24”中插入一個新行(與Sheet1中的新行相同),然后將所有現有單元格向下移動1行在Sheet2中。 Sheet2中的新行應復制上一行的公式(例如,第24行應復制第23行的公式)
  4. 在Sheet2中插入了新行之后,我想將值從Sheet1“ A24:C24”復制到Sheet2“ A24:C24”

關於2。我嘗試使用一些代碼;例如:

Sub Copy()
    Ark1.Range("A4:C500").Copy
    Ark2.Range("A4").Rows("1:1").Insert Shift:=xlDown
End Sub

這基本上可以解決2。

如何獲得3.和4.工作? 有什么想法可以嘗試嗎?

提前致謝

要執行3和4,可以使用以下代碼:

With Ark1
    'insert new row in sheet one
    .Row("24").Insert Shift:=xlDown
    'fill range A24:C24 with values
    .Range("A24:C24").Value = Array("Your", "Values", "Here")
    ' Or if specific cell values (.cells(row, column).value) Array(.cells(1,1).value, .cells(1,2).value, .cells(1,3).value)
End With

With Ark2
    'copy row to retain formulas
    .Row(23).Copy
    'insert new row in sheet two
    .Row(24).Insert Shift:=xlDown
    'get values from sheet one to sheet 2
    .Range("A24:C24").Value = Ark1.Range("A24:C24").Value
End With

PS:正如K.Dᴀᴠɪs在他​​的評論中提到的那樣,有很多文檔可以幫助您解決此類問題。 K.Dᴀᴠɪs提供了鏈接:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM