use strict; use Math::BigInt; use Cwd; use Time::Local; use POSIX qw(strftime); use Win32::OLE::Const 'Microsoft Excel'; # use OLE/Excel $Win32::OLE::Warn = 3; # die on errors... <<<...snip...>>> # Create worksheet after cases data sheet $act_sheet = $workbook->Worksheets->Add({After=>$ws_data}) or die Win32::OLE->LastError(); #Get current active sheet name $act_sheet_name = $workbook->ActiveSheet->{Name}; #Get current active sheet name $act_sheet = $workbook -> Worksheets( "$act_sheet_name" ); $act_sheet->{name} = 'ClosedRegion'; #Change sheet name http://www.perlmonks.org/bare/?node_id=417676 $pv_table = $ws_data->PivotTableWizard( { SourceType=>xlDatabase, SourceData=>$data_rang, TableDestination=>'ClosedRegion!R3C1', TableName=>"PivotTable2"} ); $pv_table->AddFields( "Owner Region" ); $pv_table->PivotFields("Owner Region")->{Orientation} = xlDataField; $pv_table->PivotFields("Owner Region")->{Function} = xlCount;