View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
JMB JMB is offline
external usenet poster
 
Posts: 2,062
Default Assign a 2D array of constant values to a range

You can use array constants in Excel formulae, but I don't think VBA has
multidimensional array constants. You should be able to assign your data to
a 2 dimensional array variable and set your range equal to that

Range("A1:C3").Value = arrData

where arrData is a 3x3 array.


"dodgo" wrote:

I thought I'd done this in the past, but I can't remember if or how. I
want be able to assign an array of values to a range in 1 go, such as

1 2 3
4 5 6
7 8 9

to A1:C3

I'd thought I'd done something like Range("A1:C3") =
(1,2,3;4,5,6;7,8,9)
using ; as a delimiter between rows in the array, but that clearly
isn't working.

I'm quite familiar with the looping/iterator techniques available to
assign a variable array to a range. I was just hoping there was a way
to do this in one line of code.