Создание электронных таблиц Excel в Perl, которые ссылаются на сторонние надстройки

Я пытаюсь сгенерировать файл xls с помощью Spreadsheet::SimpleExcel, который вызывает функцию, определенную в надстройке третьей стороны (Bloomberg, если это имеет значение). Базовый пакет WriteExcel не позволяет мне записать это, потому что он не знает об этой функции надстройки. Я вижу гигантскую хэш-таблицу встроенных функций, о которых знает модуль и которые потенциально могут добавить к ней эту функцию, но я не знаю атрибутов функции, особенно "кода ptg".

Есть ли способ либо определить, что такое код ptg (я предполагаю, что это что-то вроде кода операции) этой сторонней функции, либо есть какой-то способ обмануть модуль, чтобы он позволил мне выписать эти функции без необходимости знать их? подробности? Или какой-то третий план, о котором я не подумал?

2 ответа

Решение

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

Оба модуля используют тот же интерфейс, что и Spreadsheet::WriteExcel, но с меньшим количеством функций.

Я думаю, что вам нужно использовать Win32::OLE, и это немного грязно. Пытаться:

$xls->AddIns->Add( $xll_path );
$xls->RegisterXLL( $xll_file );

где $xll_path - это полный путь к xll для Bloomberg, а $xll_file - это просто имя xll.

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