繁体   English   中英

Excel VBA数组到不连续的命名范围

[英]Excel VBA Array to non-contiguous named ranges

我正在尝试将数据从数组获取到不连续的命名范围。 我一直以数据的第一个单元格结束,是所有命名的范围单元格。 我想我的大脑受伤了。 我正在查看我的代码,甚至不确定为什么要编写它,所以我将其省略。

我需要从A2:I2复制的数据,然后粘贴到命名范围“ blah”(B2,D2,F2,B4,D4,F4,B6,D6,F6)

有人可以指出我正确的方向吗? 它实际上比这复杂得多,但是我似乎无法使这一部分正常工作。 感谢您的任何见解。

考虑以下示例:

Sub MoveData()
    Dim r1 As Range, r2 As Range, r As Range, _
        indx As Long, ary()
    Set r1 = Range("A2:I2")
    Set r2 = Range("B2,D2,F2,B4,D4,F4,B6,D6,F6")
    r2.Name = "blah"

    ary = r1

    indx = 1
    For Each r In Range("blah")
        r.Value = ary(1, indx)
        indx = indx + 1
    Next r
End Sub

在excel单元格中有多种引用单元格的方式,它们是相对的,绝对的或半绝对的。 您是否尝试过使用其他样式。

要么

您可以在下一列中使用这样的偏移量函数吗= OFFSET($ a2,0,2 *(row()-1))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM