Как составить скрипт сравнения таблиц Excel 2013?

Я пытаюсь включить новую необычную функцию сравнения электронных таблиц из надстройки Inquire в Excel 2013 в сценарий VBA.

План состоит в том, чтобы иметь макрос для автоматизации сравнения двух электронных таблиц с заранее заданными именами и экспортировать все различия в новую электронную таблицу.

Без успеха на сегодняшний день.

Вот что я пробовал до сих пор:

  1. Обычно, чтобы узнать, как автоматизировать некоторые функции Excel, я использую Record Macro.
  2. Если это не удается, я просматриваю список добавляемых ссылок, чтобы увидеть, не упустил ли я что-то очевидное.

Оба из них потерпели неудачу в этом случае. Когда я записал макрос, не появилось никакого кода, относящегося к Spreadsheet Compare (только периферийные устройства, такие как cell-select). И ни одна из добавляемых ссылок не выглядела как Spreadsheet Compare.

Итак, как мне написать скрипт сравнения таблиц Excel в VBA 2013 года?

3 ответа

Я открыл аналогичный вопрос для автоматизации инструмента сравнения электронных таблиц из приложения.NET, но я не нашел другого способа, кроме как запустить его из командной строки.

Вы можете сделать это из вашей надстройки VBA. Все, что вам нужно, это найти исполняемый файл SPREADSHEETCOMPARE.EXE (обычно в C:\Program Files (x86)\Microsoft Office\Office15\DCF) и выполнить его в командной строке с файлом инструкций в качестве входного аргумента.

Этот файл инструкций должен быть файлом ASCII с двумя путями к файлам Excel для сравнения, записанными в отдельных строках.

  1. Создайте файл runCompare.cmd:

    REM Execute from command line spreadsheetcompare.exe 
    REM 
    cd C:\Program Files (x86)\Microsoft Office 2013\Office15\DCF
    spreadsheetcompare.exe  C:\reportNames.txt
    
  2. В C:\reportNames.txt сохраните в той же строке файлы.xlsx, которые вы хотите сравнить:

    C:\fileA.xlsx C:\fileB.xlsx
    
  3. Выполните runCompare.cmd.

Ты не можешь

VBA не распространяется на дополнения, как в этом случае.

Сравнение таблиц - это сторонний плагин, который проглотил Microsoft.

Если вам нужно сравнение с помощью сценариев, вы можете найти те, которые подходят для каждой ячейки, для каждой строки... что-то в сети.

Другие вопросы по тегам