返回列表 上一主題 發帖

[發問] 把指定資料複製到不同的分頁的最後一列下面

[發問] 把指定資料複製到不同的分頁的最後一列下面

您好
我想把sheet1 指定的欄位值複製到Sheet2最後一列下面
而且每次複製都可以指定到Sheet2最後一列的資料的下面
但複製的語法我搞不訂
請問該如何處理
謝謝!!

以下程式,請幫我指點一下
Sub 巨集1()
Range("A1").Select
Selection.End(xlDown).Select
Sheet2.Range("A" & ActiveCell.Row + 1).Value = “”  
End Sub

本帖最後由 yen956 於 2014-5-13 19:10 編輯

回復 1# pupai
是每次均將Sheet1 欄A 的資料, 全部備份到 Sheet2?
如果是, 試試這個
  1. Sub Command()
  2.     Dim sh1, sh2 As Worksheet
  3.     Dim lastRow1, lastRow2 As Integer
  4.    
  5.     Set sh1 = Sheets("Sheet1")
  6.     Set sh2 = Sheets("Sheet2")
  7.     lastRow1 = sh1.[A2].End(xlDown).Row
  8.     lastRow2 = sh2.[A65536].End(xlUp).Row
  9.    
  10.     '假定要複製的資料, 每次均從 sh1.[A2]開始
  11.     '將Sheet1 欄A 的資料, 全部備份到 Sheet2欄A最下面
  12.     sh1.[A2].Resize(lastRow1 - 1, 1).Copy sh2.[A2].Offset(lastRow2 - 1, 0)
  13. End Sub
複製代碼

TOP

回復 2# yen956


   謝謝您的回覆

不過我只會用簡單錄製巨集的方式
請問下面的巨集要如何修改,我才可以在不同分頁貼上數值

Sub 巨集1()
Sheets("工作表1").Select
Range("A2:B2").Select
Selection.Copy

Sheets("工作表2").Select
Range("A1").Select
Selection.End(xlDown).Select
Sheet2.Range("A" & ActiveCell.Row + 1).Value =

‘Selection.Insert Shift:=xlDown
;Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
‘:=False, Transpose:=False


End Sub

TOP

回復 3# pupai


    請問
這一段巨集為什麼在2007的版本可以跑得動
2010就不可以呢
  1. Sub Macro1()

  2. Sheets("結果").Select
  3. Range("A2:B2").Select
  4. Selection.Copy
  5. Sheets("清單").Select
  6. '每次複製都可以指定到Sheet2最後一列的資料的下面
  7. Range("A1").Select
  8. Selection.End(xlDown).Select
  9. Sheet3.Range("A" & ActiveCell.Row + 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
  10. :=False, Transpose:=False
  11. End Sub
複製代碼

TOP

本帖最後由 owen06 於 2014-5-14 11:24 編輯

回復 3# pupai
你試試這樣如何
  1. Sub 巨集1()
  2. Sheets("工作表1").Select
  3. Sheets("工作表1").Range("A2:B" & Sheets("工作表1").[a65536].End(3).Row).Copy
  4. Sheets("工作表2").Select
  5. Sheets("工作表2").[a65536].End(3).Offset(1, 0).PasteSpecial xlPasteValues
  6. End Sub
複製代碼

TOP

回復  pupai
你試試這樣如何
owen06 發表於 2014-5-14 11:19



   
那如果我只要複製工作表1的Range("A2:B2")的資料
請問要如何修改呢
謝謝

TOP

本帖最後由 owen06 於 2014-5-14 11:55 編輯

改範圍就好了
  1. Sub 巨集1()
  2. Sheets("工作表1").Select
  3. Sheets("工作表1").Range("A2:B2").Copy
  4. Sheets("工作表2").Select
  5. Sheets("工作表2").[a65536].End(3).Offset(1, 0).PasteSpecial xlPasteValues
  6. End Sub
複製代碼
回復 6# pupai

如果你每次要複製的資料都固定只有A2:B2,那更簡單
  1. Sub 巨集1()
  2. Sheets("工作表2").[A65536].End(3).Range("A2:B2") = Sheets("工作表1").Range("a2:b2").Value
  3. End Sub
複製代碼

TOP

回復 7# owen06


    了解
謝謝

TOP

感謝 owen06大大提供好方法
可不可以把"工作表2"從  B2  B3開始貼
因為小弟的A欄是日期

再次感謝幫忙
~~~~~~~~~~~~~
Sub 巨集1()
Sheets("工作表1").Select
Sheets("工作表1").Range("A2:B2").Copy
Sheets("工作表2").Select
Sheets("工作表2").[a65536].End(3).Offset(1, 0).PasteSpecial xlPasteValues
End Sub
~~~~~~~~~~~~~~~~~
學習 學習 一直學習

TOP

回復 9# peter95


    Sheets("工作表2").[B65536].End(3).Offset(1, 0).PasteSpecial xlPasteValues

TOP

        靜思自在 : 人的心地是一畦田,土地沒有播下好種子,也長不出好的果實。 -
返回列表 上一主題