匿名使用者
匿名使用者 發問時間: 電腦與網際網路程式設計 · 7 年前

EXCEL VBA 動態複製及貼上

各位VBA前輩好

小弟是EXCEL VBA初學者,我想在EXCEL 做 動態複製及貼上。

也就是從工作表Sheet1的A欄位複製至工作表"薪資計算"的B欄位,且只貼上值。

我試著寫以下的VBA code, 但一直有問題,請問各位前輩有何指點?

感蝦~

Sub 動態複製()

Dim x As Long

Dim LastRow1 As Long

Dim Sh1, Sh2 As Worksheet

Set Sh1 = Sheets("Sheet1")

Set Sh2 = Sheets("薪資計算")

LastRow1 = Sh1.Range("A65536").End(xlUp).Row

For x = LastRow1 To 1 Step -1

Sh1.Range("A1:A" & x).Copy

Sh2.Range("B3:B" & x).PasteSpecial Paste:=xlPasteValues

Next x

End Sub

4 個解答

評分
  • KK
    Lv 7
    7 年前
    最佳解答

    你的VBA可修改為

    For x = LastRow1 To 1 Step -1

    Sh2.Range("B" & x + 2) = Sh1.Range("A" & x).Value

    Next x

    2014-03-26 22:12:21 補充:

    或是去掉 FOR x ....Next x

    改為

    Sh2.Range("B3").Resize(LastRow1, 1) = Sh1.Range("A1:A" & LastRow1).Value

    2014-03-26 22:15:30 補充:

    Kubi 大是這方面的高手,後續有問題可以繼續請教 Kubi

    我最近忙,剛好今天有空逛逛就走

    2014-03-27 21:42:29 補充:

    修改此部分

    For x = LastRow1 To 1 Step -1

    Sh1.Range("A1:A" & x).Copy

    Sh2.Range("B3:B" & x).PasteSpecial Paste:=xlPasteValues

    Next x

    去掉 FOR x ....Next x

    以塊狀資料複製會比 For ...Next 一筆一筆複製快很多

    Sh2.Range("B3").Resize(LastRow1, 1) = Sh1.Range("A1:A" & LastRow1).Value

    使用 Range.Copy 方法

    可以將格式一同複製過去

    Sh1.Range("A1:A" & LastRow1).Copy Destination:=Sh2.Range("B3")

    只複製值

    Sh1.Range("A1:A" & LastRow1).Copy

    Sh2.Range("B3").PasteSpecial Paste:=xlPasteValues

  • 匿名使用者
    7 年前

    感謝 Kubi 及 KK 老大的指點,我先用了Kubi老大的方法AND IT WROKS,之後給修改成KK老大的建議 (005) 運作更順! 感蝦~~

  • 匿名使用者
    7 年前

    下面的網址能回答你的問題

    ▶▶http://*****

  • Kubi
    Lv 5
    7 年前

    不需用迴圈

    Sub test()

      Dim x As Long

      Dim LastRow1 As Long

      Dim Sh1 As Worksheet, Sh2 As Worksheet

      Set Sh1 = Sheets("Sheet1")

      Set Sh2 = Sheets("薪資計算")

      LastRow1 = Sh1.Range("A65536").End(xlUp).Row

    2014-03-26 16:28:54 補充:

      Sh1.Range("A1:A" & LastRow1).Copy

      Sh2.Range("B3").PasteSpecial Paste:=xlPasteValues

      Application.CutCopyMode = False

    End Sub

    2014-03-27 16:18:50 補充:

    KK 大的 005 是屬佳作。

    2014-03-27 21:15:23 補充:

    那就有請 KK 大上答。

還有問題?馬上發問,尋求解答。