下标超出范围 VBA 代码

subscript out of range VBA code

谁能帮我弄清楚为什么这个代码错误是 "subscript is out of range"。 (运行时间错误9)

Dim arrayU() As Variant
Dim arrayX() As Variant
Dim arrayW() As Variant
Dim LrowU As Integer
Dim LrowX As Integer
Dim LrowW As Integer
Dim i As Integer
Dim j As Integer
Dim bed_in_use As Integer


   For i = 3 To LrowX
   For r = 3 To LrowW
   For j = 3 To LrowX

   If bed_in_use >= 24 Then Exit For

   If arrayX(i) = arrayW(r) Then
   bed_in_use = bed_in_use - 1
   If arrayX(i) = arrayU(j) Then
   bed_in_use = bed_in_use + 1

   Cells(i, "Y").Value = bed_in_use
    End If
    End If

检查 this page 以获取有关此错误的信息。

在你的情况下,我会说这是第一个选项:

  • 您引用了一个不存在的数组元素。

检查irj的值是否不大于数组的尺寸是什么...


或者:

  • 您声明了一个数组但没有指定元素的数量。