如何在Excel VBA中将一个值数组分配给一个范围

3

我正在为一些列创建列标题。 我希望能够像下面这样一次性完成,但是我无法正确使用语法。 有人可以帮忙吗?

Range("AB1:AE1").Value = ("UnitPriceUSD","TotalCostUSD","UnitPrice", "TotalCost")
1个回答

5
尝试这个。
Dim arr As Variant
arr = Array("UnitPriceUSD", "TotalCostUSD", "UnitPrice", "TotalCost")

Range("AB1:AE1").Value = arr

甚至更简单:
Range("AB1:AE1").Value = Array("UnitPriceUSD", "TotalCostUSD", "UnitPrice", "TotalCost")

我需要先声明任何数组吗?我刚试过这个,它可以工作 - Range("AB1:AE1").Value = Array("UnitPriceUSD","TotalCostUSD","UnitPrice", "TotalCost")。有人把这个作为答案发布了,但已经删除了。 - Siraj Samsudeen
是的,这似乎足够了,我总是把事情搞得过于复杂。 - mattboy
可以用来给某一行中的列进行赋值。但是Range("A1:A2") = Array("a","b")会将"a"赋值给A1和A2。我猜测这个数组需要是二维的,但是Array似乎只支持创建一维数组。 - Graham Monkman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接