Hola,
Tengo una tabla en access con 4 campos (Código, Descripción, UnidDistr, Precio). En excel quiero crear un array que contenga todos los datos del campo (Descripción). Para ello utilizo el siguiente código:
Array1 = Array(Rs.Fields(1).Value)
Pero cuando llamo al array para cargar mi combobox desde un formulario de excel solo me carga un dato. Mi pregunta es ¿Como puedo cargar todos los datos en el array?
Se me ocurre que puedes recorrer con un bucle todos los registros irlos leyendo todos.
Do until Rs.EOF
... aquí lees el valor del registro actual con Rs.Fields(1).Value
Rs.MoveNext 'para ir al siguiente registro
Loop
Otra posibilidad es emplear el método GetRows del recordset, que devuelve una matriz con todos los registros, pero devuelve todos los campos, así que luego tendrías que ir leyendo esa matriz de resultados para obtener la matriz que necesitas, es decir, que tendrías que hacer un bucle por la matriz.
Aquí explica cómo es ese resultado que proporciona GetRows, que es una matriz bidimensional https://docs.microsoft.com/es-es/office/client-developer/access/desktop-database-reference/recordset-getrows-method-dao
------
Ya sé Excel, pero necesito más.
Gracias por la explicación. Y si me imaginaba que tendría que usar Do until Rs.EOF.