2015-05-07 2 views
0

Я новичок в синтаксисе электронных таблиц в целом и не могу найти много информации о CPAN, кроме основного ознакомления с основными функциями.Удалить целую строку с помощью таблицы: ParseXLSX

Я пытаюсь прочитать в .xlsx файле и удалить целую строку, если в хеше, который я фильтрую, существует column 2.

Тогда я хочу, чтобы распечатать редактируемого файла, а также в .xlxs

Это то, что я могу найти от CPAN для Spreadsheet::ParseExcel

use strict; 
use warnings; 
use Spreadsheet::ParseXLSX; 


my $parser = Spreadsheet::ParseXLSX->new; 
my $workbook = $parser->parse("file.xlsx"); 


for my $worksheet ($workbook->worksheets()) { 
    my ($row_min, $row_max) = $worksheet->row_range(); 
    my ($col_min, $col_max) = $worksheet->col_range(); 
    for my $row ($row_min .. $row_max) { 

     # Here I want to delete an entire row if a column 2 of that row matches a value 

     # sudo code: 
     # delete 'row' if 'row column 2' exists $hash{$key} 

     # And then print out the edited .xlsx file 

     } 
    } 
} 

Может кто-нибудь дать мне некоторые указатели?

Есть Spreadsheet::ParseExcel подходящий модуль для использования?

ответ

4

Spreadsheet::ParseXLSX предназначен только для чтения электронных таблиц. У него нет средств для обновления и сохранения данных из Perl в электронную таблицу Excel.

Тогда есть такие модули, как Spreadsheet::WriteExcel и Excel::Writer::XLSX, которые могут писать электронные таблицы, но не могут их прочитать.

Но соединить их в один и тот же сценарий? Отступите и посмотрите, как происходит волшебство.

Смежные вопросы