2016-04-14 24 views
0

Bu kodun neden "alt simge aralık dışında" olduğunu anlamama yardımcı olabilir. (Çalışma süresi hatası 9) Bu hata hakkında bilgi almak içinsubscript kapsam dışı VBA kodu

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 
+2

Bu, dizilerinizin beyanına bağlı olacaktır. Bildirim satırlarını göster. Çin arrayx 'de olduğu gibi (... ' –

+0

Dim strDate Dim tamsayı Dim LrowX olarak Varyant Dim LrowU olarak Varyant Dim arrayW olarak Varyant Dim arrayX olarak tamsayı Dim arrayU()()() olarak Integer sayılır gibi Dim LrowW Tamsayı Olarak Dim i Olarak Tamsayı Dim j As Tamsayı Dim bed_in_use Tamsayı olarak – Zapata

+1

yorumlarda bulunmuyor, lütfen orijinal gönderiye koyun. –

cevap

0

kontrol this page.

  • Sen varolmayan bir dizi elemanını başvurulan: Senin durumunda

    ben ilk seçenek olduğunu söyleyebilirim.

Kontrol değerleri i, r ve j için ...


Ya o ya boyutlandırılmış neyi diziler kıyaslanmasını ise:

  • Bir dizi bildirdiniz, ancak öğe sayısını belirtmediniz.