2016-08-22 52 views
-1

我有一个代码,在一个子我开始填充一个数组。后来在另一个子我试图用附加信息填充相同的数组。它不工作,因为我收到运行时错误9.我被告知我不能这样做,因为redim不适用于我的数组的第一维。我可以使用两个differeent subs来填充相同的数组吗?

我的问题是否有另一种方法可以完成这项工作?以下是我到目前为止。

错误发生:

Sub PartTwo() 

    ReDim WorkArray(1 To GEMclass.NumofP, 1 To 4) 

    For c = 1 To UBound(FullArray, 1)  
     If GEMclass.g = FullArray(c, 1) Then           
      Count = Count + 1 

      WorkArray(Count, 1) = FullArray(c, 1) 
      WorkArray(Count, 2) = FullArray(c, 4) 
      WorkArray(Count, 3) = FullArray(c, 7) 
      WorkArray(Count, 4) = FullArray(c, 6)   
     End If   
    Next c 

    ReDim Preserve WorkArray(1 To GEMclass.NumofP, 1 To 4)     
    CumulativePartners = GEMclass.NumofP 

End Sub 

Sub PartThree() 

    For e = 1 To Count   
     If dict.Exists(WorkArray(e, 2)) Then 

      TempCP = CumulativePartners 
      CumulativePartners = CumulativePartners + dict(WorkArray(e, 2)).NumofP            
      For f = 1 To UBound(FullArray, 1) 

       If WorkArray(e, 2) = FullArray(f, 1) Then         
        For g = 1 To dict(WorkArray(e, 2)).NumofP          
         Dim test As Integer 
         test = TempCP + g 

         WorkArray(test, 1) = FullArray(f, 1)<---Runtime error 9 
         WorkArray(test, 2) = FullArray(f, 4) 
         WorkArray(test, 3) = FullArray(f, 7) 
         WorkArray(test, 4) = FullArray(f, 6)           
        Next g         
       End If 

      Next f     
      ReDim Preserve WorkArray(1 To CumulativePartners, 1 To 4) 
     Else 
      MsgBox "No" 
     End If   
    Next e 

End Sub 
+0

当你得到错误时'test'和'UBound(WorkArray,1)'的值是什么? – Comintern

+0

可能的重复:http://stackoverflow.com/questions/16369217/redim-preserve-to-a-multi-dimensional-array-in-visual-basic-6 – Jeremy

+0

第1步:使用Option Explicit并理解变量范围。 “WorkArray”在哪里申报?谁在叫'PartTwo'?谁在叫'PartThree'? –

回答

0

副手,你的作用域不正确。 Part2试图引用仅在Part3本地的变量。它应该是这样的:

Option Explicit 

Dim WorkArray(1 to GEMclass.NumofP, 1 To 4) 

Sub PartTwo() 
    'Your code 
End Sub 

Sub PartThree() 
    'Your code 
End Sub 

如果你调整你的声明一样,在同一模块中,WorkArray将是两个子程序可用的变量。

相关问题