2013-04-09 189 views
0

我正在運行perl64上的簡單腳本來在excel上生成圖表,但我得到的錯誤沒有生成任何圖表。
它打開excel表單,將數據寫入表單但沒有圖表。Perl使用Win32 :: OLE模塊Excel 2007-不能生成圖表

Win32::OLE(0.1709) error 0x80020003: "Member not found" 
    in PROPERTYPUT "ChartType" at C:\path\test.pl line 20. 

這裏是我的系統規格

  • PERL版本:主動Perl的64 v5.16.3
  • WIN32 OLE:0.1709
  • Excel版本:Excel 2007中SP3

燦任何人請給我一些關於如何刪除此錯誤並生成圖表的輸入?

use strict; 
use Win32::OLE; 
use Win32::OLE::Const 'Microsoft Excel'; 

my $Excel = Win32::OLE->new("Excel.Application"); 
$Excel->{Visible} = 1; 
$Win32::OLE::Warn = 3; 
my $Book = $Excel->Workbooks->Add; 
my $Sheet = $Book->Worksheets(1); 
my $Range = $Sheet->Range("A2:C7"); 
$Range->{Value} = 
[['Delivered', 'En route', 'To be shipped'], 
[504, 102, 86], 
[670, 150, 174], 
[891, 261, 201], 
[1274, 471, 321], 
[1563, 536, 241]]; 

my $Chart = $Excel->Charts->Add; 
$Chart->{ChartType} = xlAreaStacked; 
$Chart->SetSourceData({Source => $Range, PlotBy => xlColumns}); 
$Chart->{HasTitle} = 1; 

回答

0

嘗試將此行更改:​​

$Chart->SetSourceData({Source => $Range, PlotBy => xlColumns}); 

這一個:

$Chart->SetSourceData($Range, xlColumns); 
+0

非常感謝您的回覆這一點。我已經嘗試了上面的更改,但它仍然沒有生成圖表。我看到同樣的錯誤。我已經在我的朋友筆記本電腦上嘗試了相同的Perl腳本,這些筆記本電腦的系統配置與我的系統配置相同,並且在他的筆記本電腦上工作。有什麼具體的配置我需要做,爲了使它的工作? – user2263994 2013-04-10 16:08:52

相關問題