将范围复制到不同表格中的命名范围

时间:2015-10-24 20:26:34

标签: excel vba excel-vba range

我有一个名为“Capacities”的命名范围,它指的是Sheet“Model”和Range(“I13:I15”)

现在在下面的宏中我有Range“ScnCap”

现在结束已被注释掉的所有东西似乎都不起作用

虽然目标非常简单,但我只想为命名范围(“容量”)指定在宏中生成的范围(“ScnCap”)。

我错的任何想法?

Dim wm, ws, wr As Worksheet
Dim i, j, l, m As Long
Dim char As Variant
Dim ScnCap As Range

Set wm = Sheets("Model")
Set ws = Sheets("Scenarios")
Set wr = Sheets("Results")

For i = 1 To 5

With ws
 j = i + 1
 .Cells(7, j).Select
  Set ScnCap = .Range(.Cells(5, j), .Cells(7, j))
 End With



' ws.Range("ScnCap").Value.Copy wm.Range("Capacities")
'wm.Range("Capacities") = ws.Range("ScnCap").Value
'
'Range("ScnCap").Copy
'Range("Capacities").PasteSpecial xlPasteValues

  Next i

1 个答案:

答案 0 :(得分:0)

ScnCap已经是一个设置范围对象,所以你不需要再次对它使用Range()方法。

这将有效:

wm.[capacities] = ScnCap.Value