我正在做一个for循环,需要使用变体数组类型,但我得到错误13(类型不匹配)。我希望k的第一个值是3,4,5,依此类推(根据下面的变量检查)。我只是不知道如何让vba读取数组。我试过使用tsperiodo(i)(j)
,但它也没有奏效。在循环中使用变体数组(错误13类型不匹配)
这里是变量数组:
ReDim ocup(1 To numDis, 1 To numSalas) As Variant
For i = 1 To numDis
For j = 1 To numSalas
If capacidadeSalas(j) - alunos(i) >= 0 Then
ocup(i, j) = 1
End If
Next
Next
ReDim tsPeriodo(1 To numDis) As Variant
For i = 1 To numDis
tsPeriodo(i) = Application.Transpose(Evaluate("=ROW(" & tsInicio(i) & ":" & tsFim(i) & ")"))
Next
和这里就是我想使用它:
For i = 1 To ocup(numDis, 1)
For j = 1 To ocup(1, numSalas)
For k = 1 To tsPeriodo(i) 'this is where im getting error 13
variable = "x_" & i & "_" & j & "_" & k
Next
Next
Next
variable inspection for the tsperiodo(i)
您使用的是什么版本的Excel?法语? 'For i = 1 To ocup(numDis,1)'suppost是什么? –
我在葡萄牙语中使用excel 2016! “ocup”也是一个variat数组,但是这个工作正常,我将编辑主帖插入代码。 – jf8769
你永远不会显示'tsInicio(i)'和'tsFim(i)'是如何实例化的。 'Evaluate(“= ROW(”&tsInicio(i)&“:”&tsFim(i)&“)”)'只会返回一个数字而不是数组。 – 2016-11-23 07:12:40