Matrice dinamica

  • Problema con matrice dinamica di Big ronnie
    Ciao a tutti, vi espongo subito il mio problema.
    ho dichiarato una matrice dinamicamente,dopdiche' all'interno di una macro la dimensiono con redim ed il risultato di un conteggio variabile di celle(ora supponiamo 10).quando per errore voglio leggere l'11 elemento giustamente mi dice indice non compreso nell'intervallo,ma non capisco perchè subito dopo andando a leggere per esempio il 5 elemento mi dà lo stesso errore.non mi rimane altro da fare che svuotare la matrice con il comando erase e far ricontare le celle.ciao e grazie

    di Mauro
    Ciao big potresti postare il codice che ti crea problemi?

    di Mauro
    Secondo me può dipendere da come passi la matrice alla routine chiamata. prova a mettere tutto il codice nella stessa routine e vedere se lo fa ancora.

    di Big ronnie
    Scusa per il ritardo ma sono stato impegnato.questo è un esempio del codice che ti ho detto.la matrice è dichiarata publicamente in un modulo nella sezione generale-dichiarazioni e la macro nello stesso modulo.ciao e grazie.
     
    Public matrice() As String
    Sub q()
    Count = 1
    Do While Worksheets(1).Range("a" & Count) <> ""
      Count = Count + 1
    Loop
    a = Count - 1
    ReDim matrice(a)
    For I = 1 To a
      matrice(I) = Worksheets(1).Range("a" & I)
    Next I
    End Sub
    

    di Big ronnie
    Dimenticavo di dirti che nelle celle da "a1" ad "a10" per l'esempio ho messo delle lettere.ciao
    p.s:a me continuano a non inserirsi gli smile,perchè?

    di Mauro
    Ciao big così com'è messa la tua routine mi funziona perfettamente! ho riscontrato un problema quando provo a passare la matrice ad una subroutine, sembra venga passato per valore anzichè per riferimento come dovrebbe essere...