将细胞范围设定回自身

时间:2016-09-08 13:55:19

标签: excel vba excel-vba

我很好奇是否有一种简单的方法可以在vba代码中切换页面。让我解释一下。

假设我们有一个名为LookUpTableData$A1:$D10的NamedRange 范围中的每个单元格都有不同的数据,而数据表示内容,而不是数据类型。

让我说我像这样在VBA中检索范围。

CompleteModifiedRange = Range("LookUpTableData")
'Now I make some changes to the data
CompleteModifiedRange.Cells(1,1).Value = Blah
CompleteModifiedRange.Cells(2,1).Value = Blah2

所以真正的问题是,如何将整个范围粘贴到原位,而不必遍历所有单元并设置它们?有点像这样。

Set Range("LookUpTableData").Range = CompleteModifiedRange

有这样的方法吗?

1 个答案:

答案 0 :(得分:3)

你基本上几乎回答了你自己的问题。由于您没有使用Set,因此您的CompleteModifiedRange变量实际上包含一个数组,因此您不会使用Cells

Dim CompleteModifiedRange As Variant
CompleteModifiedRange = Range("LookUpTableData").Value
'Now I make some changes to the data
CompleteModifiedRange(1,1).Value = Blah
CompleteModifiedRange(2,1).Value = Blah2
Range("LookUpTableData").Value = CompleteModifiedRange