¿Cómo recuperar datos adyacentes? después de usar “Eliminar datos del rango de datos externos antes de guardar el libro de trabajo” –

imagenes

Tengo una hoja de cálculo con una tabla de datos externa proveniente de SQL Server con una consulta que devuelve datos específicos para cada usuario. He puesto instrucciones en este archivo para permitir que se descargue una vez y luego para desvincularlo.

Desafortunadamente, un usuario no lo hizo, agregó una gran cantidad de datos, “guardó” y perdió su trabajo.

¿Hay alguna manera de recuperar los datos?


Tenemos varias respuestas

La mejor respuesta:

Lo siento, estás fuera de suerte. Como ha marcado “Eliminar datos del intervalo de fechas externo antes de guardar el libro de trabajo”, los datos agregados nunca se guardaron y no hay lugar para recuperar los datos del usuario.

Para evitar que este tipo de accidente siga adelante, cambiaría el libro de trabajo a macro habilitado (.xlsm), si no lo está ya, y agregaría una verificación en el evento BeforeSave para ver si la tabla ha sido desvinculada.

Private Sub Workbook_BeforeSave (ByVal SaveAsUI As Boolean, Cancel As Boolean)
   Dim sMsg como cadena

   'Suponiendo que la tabla de datos es la primera tabla en la primera hoja de trabajo
   Con hojas de trabajo (1) .ListObjects (1)  

      Si .SourceType <> xlSrcRange Then
         sMsg = "¡Cualquier cambio que haya hecho en la tabla no se guardará a menos que se desvincule de la base de datos!" _
               & vbCrLf & vbCrLf & "¿Quieres desvincularte?"
         Si MsgBox (sMsg, vbExclamation + vbYesNo) = vbYes Then
            .Desconectar
         Terminara si
      Terminara si

   Terminar con

End Sub

Otra respuesta


Fuente

Leave a Reply