2017-04-19 47 views
0

我知道我是密集的,但我不能爲我的生活找到一個簡單的(剪貼板免費)正確的語法複製動作:簡單複製範圍問題

Sheets("B").Range(Cells(X, Y), Cells(X, Y+ 3)).value = _ 
Sheets("A").Range(Cells(1, Z), Cells(1, Z+ 3)).value 

回答

2

您將需要資格的Cells用途的一個或兩個,使得VBA知道什麼表包含那些細胞:

Sheets("B").Range(Sheets("B").Cells(X, Y), Sheets("B").Cells(X, Y+ 3)).Value = _ 
Sheets("A").Range(Sheets("A").Cells(1, Z), Sheets("A").Cells(1, Z+ 3)).Value 
+0

你4秒打我。 8P –

+0

@ScottCraner這是一個難得的一天,當我回答一個問題比你快:) –

0

我會從一個已知的基準(如「A1」)啓動和使用.Offset().Resize()方法「選擇」的你想要的值。這樣可以保證獲得相同數量的行和列。

Sheets("A").Range("A1").Offset(0,Z-1).Resize(1,3).Value = _ 
    Sheets("B").Range("A1").Offset(X-1,Y-1).Resize(1,3).Value 

這個工作最好結合工作表

Sheets("A").Range("TableA").Offset(0,X-1).Resize(n,1).Value = _ 
    Sheets("B").Range("TableB").Offset(0,Y-1).Resize(n,1).Value 

命名範圍拷貝從TableB列#Xn行到TableA列#Y