2012-09-27 72 views
0

我試圖更新一個已經存在的Excel文件「Test.xls」現在,而不是給出Test.xls文件的完整路徑,我想知道如何從當前目錄讀取Test.xls文件。我在Windows環境中使用Eclipse。下面是我的代碼:如何在讀取Excel文件時將currrent目錄作爲路徑名稱?

my $Excel = Win32::OLE->GetActiveObject('Excel.Application') 
|| Win32::OLE->new('Excel.Application', 'Quit'); 

my $Book = $Excel->Workbooks->Open("Test.xls"); #This line throws an error but works if I give complete path name as D:/eclipse/workspace/testing/Test.xls 

my $Sheet = $Book->Worksheets(1); 

foreach my $data (@ifrules) 
{ 
$Sheet->Cells($row,$col)->{'Value'} =$data; 
$row++; 
} 

$Book->Close; 

我嘗試了各種選項,如./Test.xls,\ TEST.XLS和別人太。 請指教。

回答

1

從我發現的,你可以使用getcwd()來獲取當前的工作目錄。然後,您可以將其與$Excel->Workbooks->Open()中的文件名稱連接起來,以給出當前目錄以及文件的名稱。

Source Link

說明:這裏的基本問題是要傳遞的文件名到Excel,不知道Perl的當前工作目錄。這就是爲什麼你必須找到完整的路徑名並將其提供給$Excel->Workbooks->Open()

+0

它工作正常。謝謝 – Spooferman

相關問題