简单的范围复制问题

时间:2017-04-19 15:08:00

标签: excel vba

我知道我是在密集但我不能为我的生活找到一个简单的(无剪贴板)复制动作的正确语法:

file="Dépenses".ARG1.ARG2.".dat"

2 个答案:

答案 0 :(得分: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

答案 1 :(得分: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

用于将n列#TableB中的X行复制到TableA列#Y