Codigo msgbox

Hola, mi pregunta es la siguiente, ¿cómo es o sería el código que debo introducir para que al abrir una hoja de excel de por libro, me muestre un mensaje diciendo que la hoja contiene datos o información? Y si deseo borrarlos, de entrada el mensaje debe tener los botones si y no, y al hacer clic en si deseo me borre toda la información, y al hacer clic en no quiero que siga con la siguiente instrucción de lo que este programado.
De antemano muchas gracias por la atención y si me puede ayudar con mi pregunta se lo agradeceré mucho.

1 Respuesta

Respuesta
1
Después de algunas consideraciones de los casos especiales, te dejo el código que hace lo que entendí necesitabas. Me cuentas si anda. Saludos
PD: Debes pegarla en la hoja de código del libro que necesites examinar; al cambiar de hoja (activarla) se ejecuta el código de manera automática
**********************
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
''Creada por FSerrano en 110608
''Para raxziel en TodoExpertos.com
''Examina la hoja activada y pregunta si elimina o no la información contenida
'selecciona la ultima celda que contenga algun dato o formato (aunque este vacia)
ActiveCell.SpecialCells(xlCellTypeLastCell).Activate
'Analiza el rango desde la ubicación de la celda actual
'hasta la celda A1 si contiene al menos una celda no vacia, muestra el mensaje
If Application.WorksheetFunction.CountA(Range(ActiveCell.Address & ":A1")) > 0 Then
A = MsgBox("La hoja nombrada " & Chr(9) & ActiveSheet.Name & " contiene datos" & Chr(10) & "Desea eliminarlos?", vbYesNo, "CONFIRMACION")
'Si la respuesta es SI elimina todos los datos contenidos en la hoja
If A = 6 Then
direccion = ActiveCell.Address
Cells.Select
Selection.Clear
Range(direccion).Select
Else
''PEGAR AQUI LAS INSTRUCCIONES EN CASO DE ESCOGER QUE NO SE LIMPIE LA HOJA
End If
End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas