Ayuda extra, por favor.

Ya puedo abrir el archivo de Excel, pero no sé como saber cuántas hojas tiene el archivo, como cambiar de una hoja a otra y como saber el número de filas que se tiene que leer.
Agradezco tu ayuda desde ya.
Atentamente,
Jean Fernando Ortiz Arana

1 Respuesta

Respuesta
1
Soponiendo que tienes una variable llamada wbDatos que apunta al libro que acabas de abrir, para saber cuantas hojas tiene usa
NumHojas = wbDatos.Worksheets.Count
MsgBox "El libro " & wbDatos.Name & " tiene " & Format(NumHojas) & " hojas"
para cambiar de una hoja a otra, usa el siguiente codigo
'aqui usamos el nombre de la hoja
wbDatos.Worksheets("Hoja1").Activate
'aqui usamos el numero de hoja
wbDatos.Worksheets(1).Activate
Supongo que con "el número de filas que hay que leer" te refieres a que puede haber un numero variable de filas en cada hoja, por ejemplo, supongamos que tenemos tres hojas Hoja1, Hoja2 y Hoja3 y que cada una tiene datos que empiezan en la celda A1, pero no sabemos donde acaban, para saberlo, usa el siguiente código, suponiendo que en la celda A1 tenemos un titulo, el cual no se cuenta...
wbDatos.Worksheets("Hoja1").Activate
numFilas = Range("A1").End(xlDown).Row - 1
MsgBox "En la " & ActiveSheet.Name & " hay " & Format(numFilas) & " filas de datos"
wbDatos.Worksheets("Hoja2").Activate
numFilas = Range("A1").End(xlDown).Row - 1
MsgBox "En la " & ActiveSheet.Name & " hay " & Format(numFilas) & " filas de datos"
wbDatos.Worksheets("Hoja3").Activate
numFilas = Range("A1").End(xlDown).Row - 1
MsgBox "En la " & ActiveSheet.Name & " hay " & Format(numFilas) & " filas de datos"
si son muchas hojas, se podria mejor el codigo con algo como esto.
Dim wsActiva As Worksheet
Dim numFilas As Long
For Each wsActiva In wbDatos.Worksheets
wsActiva.Activate
numFilas = Range("A1").End(xlDown).Row - 1
MsgBox "En la " & ActiveSheet.Name & " hay " & Format(numFilas) & " filas de datos"
Next wsActiva
En este, no importa el numero ni el nombre de las hojas, TODAS las recorrerá y contara el numero de filas

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas