Как использовать workbook.saveas с автоматической перезаписью
В этом разделе кода Excel ALWAYS предлагает: «Файл уже существует, вы хотите перезаписать?»
Application.DisplayAlerts = False Set xls = CreateObject("Excel.Application") Set wb = xls.Workbooks.Add fullFilePath = importFolderPath & "\" & "A.xlsx" wb.SaveAs fullFilePath, AccessMode:=xlExclusive, ConflictResolution:=True wb.Close(True)
Почему db.SaveAs
всегда заставляет меня перезаписывать существующий файл, если у меня есть DisplayAlerts = False
?
Заранее спасибо!
- Индикатор выполнения в VBA Excel
- Разделить разделенные запятой записи на новые строки
- Excel VBA - объединить строки с повторяющимися значениями в одной ячейке и объединить значения в другой ячейке
- Как можно выделить две отдельные ячейки с разделенными запятыми данными и соединить их?
- Лучше ли использовать ADO или DAO в Access 2007?
- Функция для преобразования номера столбца в букву?
- Экземпляр Excel VBA.
- Различие между использованием .text и .value в VBA Access
- Макрос VBA, который ищет файл в нескольких подпапках
- Любая функция Excel, которая изменит строку?
- Функция Excel VBA работает в Visual Basic, но не работает в рабочем листе
- Прокрутите каждую таблицу на веб-странице javascrape с помощью макроса VBA
- VBA - переменная в диапазоне, внутри формулы
Чтобы не увидеть приглашение set xls.DisplayAlerts = False
ConflictResolution
не является истинным или ложным свойством, это должно быть xlLocalSessionChanges
– обратите внимание, что это не имеет ничего общего с отображением подсказки Overwrite!
Set xls = CreateObject("Excel.Application") xls.DisplayAlerts = False Set wb = xls.Workbooks.Add fullFilePath = importFolderPath & "\" & "A.xlsx" wb.SaveAs fullFilePath, AccessMode:=xlExclusive,ConflictResolution:=Excel.XlSaveConflictResolution.xlLocalSessionChanges wb.Close (True)
Я рекомендую перед выполнением SaveAs удалить файл, который он существует.
Если Dir (“f: ull \ path \ with \ filename.xls”) <> “” Then Kill “f: ull \ path \ with \ filename.xls” End If
Это проще, чем выключить и включить DisplayAlerts, плюс, если DisplayAlerts остается отключенным из-за сбоя кода, это может вызвать проблемы, если вы работаете с Excel в том же сеансе.