我想附加到Excel電子表格。 Win32 :: OLE完全適用於此,但它在Linux機器上無法使用。 Spreadsheet :: WriteExcel似乎無法追加,但它可以在兩個平臺上工作。我發現了關於Excel :: Writer :: XLSX,但它報告說它沒有電子表格那樣多的功能...在Windows和Linux上添加到Perl Excel電子表格
我還想創建超鏈接,所以點擊一些文本會引導你到另一個文本Excel工作簿中的工作表。這是可能的,並在哪一個(Excelwriter /等)?
所以有兩個問題: 1)我應該使用什麼,以便我可以在兩個平臺上工作時附加到電子表格?' 2)是否可以創建超鏈接來導向其他工作表並使用哪一個?
下面是我用的Win32 :: OLE是追加新的工作表的代碼:
use Win32::OLE;
use Win32::OLE::Const 'Microsoft Excel';
print "Opening Excel...\n";
$Excel = Win32::OLE->GetActiveObject('Excel.Application')
|| Win32::OLE->new('Excel.Application', 'Quit');
#appending to existing excel file
my $book = $Excel->Workbooks->Open($full_name) || die "Error: Could not open Excel workbook";
#putting this sheet at the beginning
my $sheet = $book->Worksheets->Add({Before => $book->Worksheets(1)}) or die "Error: " . Win32::OLE->LastError;
也許你想展示一些代碼 – Fosco 2011-05-19 19:22:18
爲什麼?我想要做的就是在兩個平臺上追加到一個文件並創建鏈接到其他工作表的超鏈接。不知道現在使用什麼代碼,甚至不知道它是否可能。我會添加代碼,以顯示我使用win32 :: OLE做了什麼,如果這有助於我猜測的話? – petranaya 2011-05-19 19:36:25