Как вернуть смежные данные? после использования «Удалить данные из внешнего диапазона данных перед сохранением книги» -

Как вернуть смежные данные? после использования «Удалить данные из внешнего диапазона данных перед сохранением книги» -

У меня есть электронная таблица с внешней таблицей данных, поступающей из SQL Server с запросом, который возвращает данные, специфичные для каждого пользователя. Я поместил в этот файл инструкции, чтобы разрешить его загрузку один раз, а затем отсоединить его.

К сожалению, один пользователь этого не сделал, добавил целую кучу данных, «сохранил» и потерял свою работу.

Есть ли способ вернуть данные?

решение1

Извините, вам не повезло. Поскольку вы отметили «Удалить данные из внешнего диапазона дат перед сохранением рабочей книги», добавленные данные не были сохранены, и нет места, откуда можно было бы извлечь данные пользователя.

Чтобы предотвратить подобные инциденты в будущем, я бы включил поддержку макросов в рабочей книге (.xlsm), если это еще не сделано, и добавил проверку в событие BeforeSave, чтобы увидеть, была ли отменена связь с таблицей.

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

   ' Assuming the data table is the first table on the first worksheet
   With Worksheets(1).ListObjects(1)  

      If .SourceType <> xlSrcRange Then
         sMsg = "Any changes you've made to the table won't be saved unless you unlink from the database!" _
               & vbCrLf & vbCrLf & "Do you want to unlink?"
         If MsgBox(sMsg, vbExclamation + vbYesNo) = vbYes Then
            .Unlink
         End If
      End If

   End With

End Sub

Связанный контент