• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Dizi kodunda hata

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,202
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba,

Aşağıdaki dizi oluşturma kodunu çalıştırdığımda;
"run-time '9': subscript out of range" hatası alıyorum, nerede hata yapıyor olabilirim?


Kod:
Set WS = Sheets(Syf)

 Const str = "BÜLBÜL"
    
With WS
    LR = .Cells(.rows.count, "A").End(xlUp).row
    Set Rng = .Range("D2:D" & LR)
End With

        ReDim My_List(1 To 1, 1 To 7)
        
        For Each My_Cell In Rng
            If My_Cell.Value Like str & "*" Then
                x = x + 1
                r = My_Cell.row
                ReDim Preserve My_List(1 To x, 1 To 7)
                    For j = 1 To 7
                        My_List(x, j) = WS.Cells(r, j)
                    Next j
                    
             Stop
            End If
        Next

Teşekkürler, iyi çalışmalar.
 
satır ve sutunları yer değiştirip yapın
veya değiken satırın değişkenliğini iptal adin net satır sayısını yazınız.
 
Son düzenleme:
satır ve sutunları yer değiştirip yapın
veya değiken satırın değişkenliğini iptal adin net satır sayısını yazınız.
Halit Hocam ilgi ve alakanıza teşekkürler;
Düzenlemeyi kod üzerindeki satırda gösterebilir misiniz?
 
ReDim My_List(1 To 1, 1 To 7)
ReDim Preserve My_List(1 To x, 1 To 7)
My_List(x, j) = WS.Cells(r, j)
yukarıdaki bölümleri aşağıdaki ile değiştirin
ReDim My_List(1 To 7, 1 To 1)
ReDim Preserve My_List(1 To 7, 1 To x)
My_List(j, x) = WS.Cells(r, j)


veya

ReDim My_List(1 To 1, 1 To 7)
yukarıdaki bölümü aşağıdaki ile değiştir
ReDim My_List(1 To 100, 1 To 7)
ReDim Preserve My_List(1 To x, 1 To 7) bu bölümüde sil
 
ReDim My_List(1 To 1, 1 To 7)
ReDim Preserve My_List(1 To x, 1 To 7)
My_List(x, j) = WS.Cells(r, j)
yukarıdaki bölümleri aşağıdaki ile değiştirin
ReDim My_List(1 To 7, 1 To 1)
ReDim Preserve My_List(1 To 7, 1 To x)
My_List(j, x) = WS.Cells(r, j)


veya

ReDim My_List(1 To 1, 1 To 7)
yukarıdaki bölümü aşağıdaki ile değiştir
ReDim My_List(1 To 100, 1 To 7)
ReDim Preserve My_List(1 To x, 1 To 7) bu bölümüde sil
Teşekkürler Halit Hocam
 
Geri
Üst