2013-04-09 7 views
0

Я запускаю следующий простой скрипт на perl64 для генерации диаграммы на Excel, но я получаю следующие ошибки без генерации диаграммы.
Он открывает лист excel, записывает данные в листы, но диаграммы не отображается.Perl с использованием Win32 :: OLE Module 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

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

  • Нет связанных вопросов^_^