Abrir formulario desde Hoja2 y tener la base de datos en Hoja1 (oculta)

Todo Expertos. Me gustaría me indiquen como hacer para abrir un formulario desde Hoja2 y que la información a consultar se encuentre en una hoja distinta y oculta.
Al parecer esta instrucción no me deja cambiar sin generar un error

Private Sub CommandButton2_Click()
If ActiveCell.CurrentRegion.Columns.Count <= 1 Then
    MsgBox "No hay datos para cargar.", vbExclamation, ""
Else
    frmBuscar.Show
End If
End Sub

2 Respuestas

Respuesta
1
Respuesta
1

En realidad, deberías utilizar la referencia de la hoja en todos tus códigos, no importa si está oculta.

Piensa en que vas a estar en la hoja principal de tu libro y de ahí consultar o manipular todos los datos de todas tus hojas.

Si la hoja está oculta, como vas a seleccionar una celda, simplemente no puedes, no sabes dónde está el cursor.

No puedes iniciar un código tomando como base la celda activa.

Para eso hay varios mecanismos para identificar si existen dados en una fila o en una columna.

Suponiendo que quieres saber la cantidad de columnas de la hoja15, de la fila 1:

Private Sub CommandButton2_Click()
  If Sheets("Hoja15").Cells(1, Columns.Count).End(xlToLeft).Column = 1 Then
    MsgBox "No hay datos para cargar.", vbExclamation, ""
  Else
    frmBuscar.Show
  End If
End Sub

Tampoco recomiendo el uso de currentRegion, es engañoso, porque si existen filas o columnas vacías no obtienes el total de filas ni el total de columnas.

Prueba mi código con la hoja visible, puedes estar en cualquier hoja y siempre te dirá cuántas columnas hay en la fila 1 (cells(1, ) de la "hoja15".

Después oculta la hoja15 y prueba la macro, verás que trabaja de la misma manera, siempre te dirá cuántas columnas hay en la fila 1 (cells(1, ) de la "hoja15". Y eso es porque estoy haciendo referencia a la hoja y a la fila de la cual quiero obtener información.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas