VBA - Предотвратить Excel 2007 от отображения окна сообщения с определенными именами? - PullRequest
3 голосов
/ 05 мая 2010

Я работаю над книгой Excel 2007, которая будет содержать макрос для сохранения текущего листа (шаблона) как

  1. файл PDF (без проблем)
  2. файл Excel 97-2003 (проблема)

При сохранении файла Excel появляется окно с сообщением о

"Определенные имена формул в этой книге могут отображать разные значения при их пересчете ... Хотите ли вы, чтобы Excel пересчитывал все формулы при открытии этой книги?" Затем пользователь может выбрать Да / Нет, после чего файл будет сохранен.

Как отключить отображение окна сообщения?
Ответ по умолчанию будет «Нет».

Мой код для сохранения:

Sub saveAs_97_2003_Workbook(tempFilePath As String, tempFileName As String)
    Dim Destwb As Workbook
    Dim SaveFormat As Long

    'Remember the users setting
    SaveFormat = Application.DefaultSaveFormat
    'Set it to the 97-2003 file format
    Application.DefaultSaveFormat = 56

    ActiveSheet.Copy
    Set Destwb = ActiveWorkbook
    Destwb.CheckCompatibility = False

    With Destwb
        .SaveAs tempFilePath & tempFileName & ".xls", FileFormat:=56
        .Close SaveChanges:=False
    End With

    'Set DefaultSaveFormat back to the users setting
    Application.DefaultSaveFormat = SaveFormat
End Sub

1 Ответ

2 голосов
/ 05 мая 2010

Попробуйте поставить это вокруг С, Конец С:

Application.DisplayAlerts = False

With Destwb
    ...
End With

Application.DisplayAlerts = True

Должно подавлять сообщение, но не уверен, будет ли оно по умолчанию так, как вы хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...