Как получить определенную библиотеку объектов Excel без соответствующей установленной версии Office - PullRequest
3 голосов
/ 29 апреля 2010

Я занимаюсь разработкой приложения для автоматизации Excel, которое читает и записывает в таблицу Excel. У меня Office 2007 установлен на моей машине. Поэтому я могу ссылаться на библиотеку объектов Excel 12.0 и библиотеку объектов Excel 5.0. Я не хочу использовать Excel 5.0, потому что он действительно довольно старый и плохо документирован. Поэтому я ссылаюсь на Excel 12.0.

Однако на целевом компьютере установлен Office 2003 и, следовательно, только Excel 11.0. Поэтому, когда я компилирую свою программу, она падает на целевой машине, так как указанная библиотека отличается.

Мне было интересно, есть ли способ получить Excel 11.0 без установки Office 03? Я пытался найти ответы на странице поддержки MSDN и Microsoft, но ничего не смог найти? Это довольно странно, поскольку это может произойти и в будущем, когда у разработчиков будут более новые версии Office, чем у клиентов?

Ответы [ 4 ]

2 голосов
/ 30 апреля 2010

Тебе не нужно сражаться так сильно. Просто включите в дистрибутив последнюю версию Office PIA (2007). Он обратно совместим с Office 2003.

Пожалуйста, прочтите Блог команды разработчиков Excel и подробный ответ о совместимости здесь .

Мы включили PIA 2007 в дистрибутив и не имеем проблем с работой предыдущей (2003) версии Excel.

MS Office Wrapper для .NET здесь очень хорошая альтернатива.

2 голосов
/ 29 апреля 2010

Посмотрите на мой проект с открытым исходным кодом MS Office Wrapper for .NET . Экземпляр объекта приложения Office создается динамически с помощью метода «CreateObject», а затем используется возможность позднего связывания, поэтому вам не требуется «сильная ссылка» на любую версию библиотек MS Office.

Вы можете использовать C #, VB.NET, J # и т. Д. *

Исходный код также доступен.

1 голос
/ 29 апреля 2010

Я очень доволен SpreadsheetGear . Этот компонент позволяет читать и писать файлы Excel. Я использую его для отчетов, на клиентском компьютере есть только Excel Viewer (бесплатно) для чтения и печати файлов.

Я использую Excel Viewer 2003, потому что в версии 2007 есть ошибка печати (при печати вы открываете диалоговое окно файла)

0 голосов
/ 29 апреля 2010

Вам потребуется загрузить и установить сборки взаимодействия Office для нужной версии Office.

Для Office 2003, скачайте с здесь
Для Office 2007, скачайте с здесь

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