将范围复制到不同工作表中的命名范围
Copy Range to Named Range in different Sheets
我有一个名为 "Capacities" 的命名范围,它指的是 Sheet "Model" 和 Range("I13:I15")
现在在下面的宏中我有范围 "ScnCap"
现在在最后所有被注释掉的似乎都不起作用
尽管目标很简单,但我只想将命名范围("Capacities") 分配给在宏中生成的范围("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
ScnCap
已经是一个set range对象,所以不需要再对它使用Range()方法。
这会起作用:
wm.[capacities] = ScnCap.Value
我有一个名为 "Capacities" 的命名范围,它指的是 Sheet "Model" 和 Range("I13:I15")
现在在下面的宏中我有范围 "ScnCap"
现在在最后所有被注释掉的似乎都不起作用
尽管目标很简单,但我只想将命名范围("Capacities") 分配给在宏中生成的范围("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
ScnCap
已经是一个set range对象,所以不需要再对它使用Range()方法。
这会起作用:
wm.[capacities] = ScnCap.Value