2014-12-21 2 views

ответ

0

В вашем случае:

Dim myArray(2, 2) As Integer 
myArray(0, 0) = 10 
myArray(0, 1) = 10 
myArray(1, 0) = 10 
myArray(1, 1) = 10 

См: MSDN

+0

Привет, Эдвард! Проблема заключается в том, что когда я пытаюсь инициализировать, как либо Dim numbers = New Integer() {1, 2, 4, 8}, либо Dim doubles = {1.5, 2, 9.9, 18}, он дает мне тот же компилятор error – sdarella

0

Попробуйте это:

Dim myArray(2,2) as Integer 
'Note that it is a 3x3 array 
'If you need a 2x2 one then change appropriately :) 

myArray(0,0) = 10 
myArray(0,1) = 10 
... 

Если все те же "10", то:

For i=0 To 2 
    For j = 0 To 2 
     myArray(i,j) = 10 
    Next 
Next 
+0

Хм, я думал, что myArray (2,2) имеет по 2 элемента в каждом измерении (от 0 до 1 каждого измерения). Но так что единственный способ присвоить значения многомерному массиву - использовать цикл или несколько инициализаций, то? Я надеялся, что смогу назначить их всех с помощью одного заявления. – sdarella

+0

myArray (1,1) равен 2x2, такой же как myArray (от 0 до 1, от 0 до 1). –

+0

или myArray (от 1 до 2, от 7 до 8) - 2x2 –

-1
dim myArray as Variant 

myArray = array(Array(1,2), array(3,4)) 

debug.print myArray(0)(0) '1 
debug.print myArray(0)(1) '2 
debug.print myArray(1)(0) '3 
debug.print myArray(1)(1) '4