Инструмент для сравнения 2 листов Excel в Linux

9

Я хочу иметь возможность сравнить 2 листа Excel в Linux. Я не заинтересован в преобразовании их в csvформат, поскольку они имеют сложное форматирование, которое не поддерживается в csv. Я хотел бы иметь возможность графического сравнения (какой-то kompareспособ). Инструмент должен быть доступен на платформе Linux.

Любые идеи ?

дебаггер
источник
Что вы хотите сравнить? Содержание? Форматирование? Обе?
Форма жизни пришельцев
Самое близкое, что я могу придумать, это импортировать листы в OpenOffice / LibreOffice, а затем написать макрос для сравнения по ячейкам.
ConcernedOfTunbridgeWells
@Alien Life Form: Я хочу сравнить оба, чтобы иметь возможность поддерживать хорошо построенный документ Excel в репозитории CVS, и иметь возможность легко сравнивать две версии, вызывая командную строку программы. В идеале эта программа может выполнять слияние, но это уже другая история ...
Отладчик
Высокий порядок ... Я не могу вспомнить ни одного инструмента, который мог бы сравнивать форматирование на чем-либо. Наиболее близким будет «семантическое» сравнение xml - так что вы можете теоретически преобразовать excel -> (некоторую промежуточную запись с хорошим поведением), а затем сравнить нейтральные форматы. Боюсь, у тебя будет куча бесполезности, с которой приходится бороться большую часть времени ».
Форма жизни инопланетянина

Ответы:

10

Open / LibreOffice имеет функцию сравнения в Edit->Compare Document...

Kevin
источник
Знаете ли вы, есть ли способ открыть OpenOffice в этом режиме из командной строки?
Натан Феллман
1

Если у вас есть время и немного знаете Perl, вы можете создать свой собственный инструмент через час или два.

Если XLS, а не XLSX, то пример на странице Spreadsheet :: ParseExcel сделает часть того, что вы хотите, обойдя каждую ячейку, лист за листом и построчно в книге , если вам нужна поддержка XLSX, см. Ссылки на стр.

В любом случае, простая настройка, чтобы открыть вторую рабочую книгу, и вы можете создать инструмент, который сравнивает имена и номера рабочих листов, а также максимальное количество столбцов и строк в каждом рабочем листе, несколько минут, выводя что-то, только если есть некоторое неравенство. Вам понадобится некоторая логика, чтобы соответствовать рабочим таблицам по имени, номеру или количеству строк / столбцов внутри, поскольку они могли изменить порядок / переименовать).

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

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

arober11
источник
0

В настоящее время я не знаю каких-либо инструментов, которые вы можете использовать для сравнения файлов Excel в Linux; тем не менее, вы можете установить Wine, а затем установить программу для Windows и использовать ее из Linux:

http://www.winehq.org/

Я нашел это очень полезным. Затем вы можете установить WinMerge и xdocdiff:

http://freemind.s57.xrea.com/xdocdiffPlugin/en/index.html

Вот пара других программ сравнения, которые вы можете установить.

4TOPS-Compare-Spreadsheets formulasoft.com: Excel-сравнить Exceldiff

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

user8128167
источник