Sto avendo un problema apparentemente di base ma non riesco a trovare alcuna risorsa che lo indirizzi.Creazione di una matrice da un intervallo in VBA
In poche parole, voglio solo caricare il contenuto di un intervallo di celle (tutte una colonna) in una matrice.
Sono in grado di raggiungere questo obiettivo mediante
DirArray = Array(Range("A1"), Range("A2"))
Ma per qualche ragione, non riesco a creare l'array quando espresso in questo modo:
DirArray = Array(Range("A1:A2"))
Il mio vero gamma è molto più lungo (e può variare in lunghezza), quindi non voglio dover enumerare individualmente le cellule in questo modo. Qualcuno può dirmi come caricare correttamente un'intera gamma in una matrice?
Con quest'ultimo codice:
MsgBox UBound(DirArray, 1)
E
MsgBox UBound(DirArray)
ritorno 0, mentre con l'ex tornano 1.
Loop attraverso la vostra gamma. – findwindow
Non è meno efficiente? Pensavo che esistesse un metodo o una proprietà che permettesse di caricare l'intera gamma nell'array in una sola volta. O qualcosa con un effetto simile, se c'è un tipo di oggetto non-array che dovrei usare invece ... – basaltanglia
dovresti riuscire a farlo. - DirArray = Range ("A1: A2") – chungtinhlakho