Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого" - VB
Формулировка задачи:
В процессе разработки приложения мне нужно открыть файл file.xls, полученный с сервера, затем сохранить его в формате xlsx. Сам файл по содержимому является каким-то гибридом html и xml. При открытии штатным способом (двойной щелчок по файлу) Excel выдает запрос "Действительный формат открываемого файла (file.xls) отличается от указываемого его расширением имени файла. Перед открытием данного файла убедитесь, что он не поврежден и получен из надежного источника. Открыть этот файл сейчас?"
Если нажать "Да", файл открывается без проблем, его потом можно saveas xlsx, что и требуется.
В проге пишу:
В момент Workbooks.Add открывается файл в excel в режиме [Только для чтения], и при этом выскакивает таблица "Нет доступа к файлу "file.xls". Возможно, файл поврежден, находится на сервере, который не отвечает на запросы, или доступен только для чтения." Если нажать "Повторить", все то же самое, замкнутый круг, если "Отмена", прога плюется, что метод Add завершен неверно. При этом, если вместо исходного файла попытаться открыть file.xslx с соответствующим содержимым, все происходит нормально. Как заставить Excel открыть файл без лишних вопросов? Заранее спасибо!
Если нажать "Да", файл открывается без проблем, его потом можно saveas xlsx, что и требуется.
В проге пишу:
В момент Workbooks.Add открывается файл в excel в режиме [Только для чтения], и при этом выскакивает таблица "Нет доступа к файлу "file.xls". Возможно, файл поврежден, находится на сервере, который не отвечает на запросы, или доступен только для чтения." Если нажать "Повторить", все то же самое, замкнутый круг, если "Отмена", прога плюется, что метод Add завершен неверно. При этом, если вместо исходного файла попытаться открыть file.xslx с соответствующим содержимым, все происходит нормально. Как заставить Excel открыть файл без лишних вопросов? Заранее спасибо!
Решение задачи: «Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого"»
textual
Листинг программы
With CreateObject("Excel.Application") .Visible = True .DisplayAlerts = False With .Workbooks.Open(Path & "file.xls", , True) 'readonly .SaveAs Path & "filenew.xlsx", 51 'Open XML Workbook (.xlsx) End With .Quit End With
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д