powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого"
6 сообщений из 6, страница 1 из 1
Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого"
    #38593199
Aztech
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В процессе разработки приложения мне нужно открыть файл file.xls, полученный с сервера, затем сохранить его в формате xlsx. Сам файл по содержимому является каким-то гибридом html и xml. При открытии штатным способом (двойной щелчок по файлу) Excel выдает запрос "Действительный формат открываемого файла (file.xls) отличается от указываемого его расширением имени файла. Перед открытием данного файла убедитесь, что он не поврежден и получен из надежного источника. Открыть этот файл сейчас?"
Если нажать "Да", файл открывается без проблем, его потом можно saveas xlsx, что и требуется.
В проге пишу:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
        Dim appe As Object
        appe = CreateObject("Excel.Application")
        appe.Visible = True
        appe.Workbooks.Add(path & "file.xls")
        appe.Workbooks(1).SaveAs(path & "filenew.xlsx")
        appe.Workbooks(1).Close()
        appe.Quit()


В момент Workbooks.Add открывается файл в excel в режиме [Только для чтения], и при этом выскакивает таблица "Нет доступа к файлу "file.xls". Возможно, файл поврежден, находится на сервере, который не отвечает на запросы, или доступен только для чтения." Если нажать "Повторить", все то же самое, замкнутый круг, если "Отмена", прога плюется, что метод Add завершен неверно. При этом, если вместо исходного файла попытаться открыть file.xslx с соответствующим содержимым, все происходит нормально. Как заставить Excel открыть файл без лишних вопросов? Заранее спасибо!
...
Рейтинг: 0 / 0
Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого"
    #38593217
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aztechкаким-то гибридом html и xml.просто переименуйте file.xls в file.xlsx
...
Рейтинг: 0 / 0
Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого"
    #38593244
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Workbooks.Add - это создание новой книги (из шаблона, если указан путь). Попробуйте так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
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
...
Рейтинг: 0 / 0
Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого"
    #38593261
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КазанскийWorkbooks.Add - это создание новой книги (из шаблона, если указан путь). Попробуйте так:по идее, в данном случае это почти ничего не меняет.
...
Рейтинг: 0 / 0
Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого"
    #38593335
Aztech
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.ProAztechкаким-то гибридом html и xml.просто переименуйте file.xls в file.xlsx
А смысл? Исходный файл НЕ xlsx по структуре, если вы об этом... Мне нужен xlsx для импорта с соответствующим форматом и структурой.
...
Рейтинг: 0 / 0
Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого"
    #38593341
Aztech
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
КазанскийWorkbooks.Add - это создание новой книги (из шаблона, если указан путь). Попробуйте так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
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


А вот это реально работает (ну правда чуть под себя переделал без with)! Спасибо!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Нужно заставить Excel открыть файл с "расширением отличающимся от содержимого"
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]