Автоматизация сравнения таблиц (Office 2013) из приложения.NET или надстройки VSTO
Можно ли автоматизировать новый инструмент сравнения электронных таблиц Office 2013 из приложения.NET или надстройки VSTO Excel путем встраивания некоторых сборок Microsoft?
Аналогичный вопрос был задан для программирования VBA, и ответ был отрицательным.
Мне удалось выполнить приложение "C:\Program Files (x86)\Microsoft Office\Office15\DCF\SPREADSHEETCOMPARE.EXE" в командной строке с текстовым файлом в качестве входного аргумента, содержащего два пути к книгам в отдельных строках, но это было бы проще вызывать метод непосредственно из кода, как и для других функций Excel.
3 ответа
Я написал простой пакетный скрипт, который позволяет сравнивать два файла из командной строки. Пожалуйста, обратитесь к github: https://github.com/kniklas/excomp для получения дополнительной информации.
Я надеюсь, что это поможет тем, кто хотел бы автоматизировать процесс сравнения Excel (например, подключить это для контроля версий - diff - файлов Excel).
Пример кода о том, как это можно реализовать, можно найти по адресу:
К сожалению, эти обходные пути не будут работать, если ваши электронные таблицы поддерживаются в TFS, и вы хотите настроить SpreadsheetCompare.exe как инструмент пользователя.
Конфигурирование инструмента, который будет использоваться для сравнения, требует, чтобы оба имени файла были переданы в качестве аргументов командной строки.