I need to know how to fix it.
The script is
use Win32::OLE;
print $test;
my %wood = (
"H" => 0,
"P" => 1,
"M" => 2,
"O" => 3,
"C" => 4,
"R" => 5,
"HM" => 6,
"W" => 7,
"A" => 8,
"DISC" => 20,
);
my $Excel = Win32::OLE->GetActiveObjec
t('Excel.A
pplication
')
|| Win32::OLE->new('Excel.App
lication',
'Quit');
my $Book = $Excel->Workbooks->Open("c
:/testing/
custom_ove
runs.xls")
;
my $Sheet = $Book->Worksheets(1);
$rg= $Sheet->{UsedRange};
$rowrange= $rg->Rows->Count;
$b=0;
$c=1;
for ($a=1;$a<$rowrange+1;$a++)
{ $cell = $Sheet->Range("A$a")->{Val
ue}; next unless $cell eq 'Part Number:';
$c=$a+1; $d=$a+2; $e=$a+3; $f=$a+4; $g=$a+5; $h=$a+6; $i=$a+7;
$b = $1.$wood{$2} if $Sheet->Range("B$a")->{Val
ue} =~ /(\d+)(\w+?)([DISC]{0,4})/
; $b .= $wood{$3} if defined $3;
$part[$b] = $Sheet->Range("B$a")->{Val
ue};
$height[$b] = $Sheet->Range("B$c")->{Val
ue};
$width[$b] = $Sheet->Range("B$d")->{Val
ue};
$sqheight[$b] = $Sheet->Range("B$e")->{Val
ue};
$weight[$b] = $Sheet->Range("B$f")->{Val
ue};
$wood[$b] = $Sheet->Range("B$g")->{Val
ue};
$quan[$b] = $Sheet->Range("B$h")->{Val
ue};
$note[$b] = $Sheet->Range("B$i")->{Val
ue};
$heigh = $b unless $heigh > $b;
$b = $1.$wood{$2} if $Sheet->Range("E$a")->{Val
ue} =~ /(\d+)(\w+?)([DISC]{0,4})/
; $b .= $wood{$3} if defined $3;
$part[$b] = $Sheet->Range("E$a")->{Val
ue};
$height[$b] = $Sheet->Range("E$c")->{Val
ue};
$width[$b] = $Sheet->Range("E$d")->{Val
ue};
$sqheight[$b] = $Sheet->Range("E$e")->{Val
ue};
$weight[$b] = $Sheet->Range("E$f")->{Val
ue};
$wood[$b] = $Sheet->Range("E$g")->{Val
ue};
$quan[$b] = $Sheet->Range("E$h")->{Val
ue};
$note[$b] = $Sheet->Range("E$i")->{Val
ue};
$heigh = $b unless $heigh > $b;
$b = $1.$wood{$2} if $Sheet->Range("H$a")->{Val
ue} =~ /(\d+)(\w+?)([DISC]{0,4})/
; $b .= $wood{$3} if defined $3;
$part[$b] = $Sheet->Range("H$a")->{Val
ue};
$height[$b] = $Sheet->Range("H$c")->{Val
ue};
$width[$b] = $Sheet->Range("H$d")->{Val
ue};
$sqheight[$b] = $Sheet->Range("H$e")->{Val
ue};
$weight[$b] = $Sheet->Range("H$f")->{Val
ue};
$wood[$b] = $Sheet->Range("H$g")->{Val
ue};
$quan[$b] = $Sheet->Range("H$h")->{Val
ue};
$note[$b] = $Sheet->Range("H$i")->{Val
ue};
$heigh = $b unless $heigh > $b;
};
$Book->Close;
system 'del custom_overuns.old';
system 'rename custom_overuns.xls custom_overuns.old';
my $Book = $Excel->Workbooks->Add;
$Book->SaveAs('c:\testing\
custom_ove
runs.xls')
;
my $Sheet = $Book->Worksheets(1);
$b=0;
$c=1;
for ($a=1;$a<$heigh;$a++) {
next unless defined $part[$a];
print $part[$a]."\n";
$b++;
if ($b < 6) {
$Sheet->Range("A$c")->{Val
ue} = "Part Number:";
$Sheet->Range("B$c")->{Val
ue} = "$part[$a]";$c++;
$Sheet->Range("A$c")->{Val
ue} = "Height::";
$Sheet->Range("B$c")->{Val
ue} = "$height[$a]";$c++;
$Sheet->Range("A$c")->{Val
ue} = "Width:";
$Sheet->Range("B$c")->{Val
ue} = "$width[$a]";$c++;
$Sheet->Range("A$c")->{Val
ue} = "Square Height:";
$Sheet->Range("B$c")->{Val
ue} = "$sqheight[$a]";$c++;
$Sheet->Range("A$c")->{Val
ue} = "Weight:";
$Sheet->Range("B$c")->{Val
ue} = "$weight[$a]";$c++;
$Sheet->Range("A$c")->{Val
ue} = "Wood:";
$Sheet->Range("B$c")->{Val
ue} = "$wood[$a]";$c++;
$Sheet->Range("A$c")->{Val
ue} = "Quantity:";
$Sheet->Range("B$c")->{Val
ue} = "$quan[$a]";$c++;
$Sheet->Range("A$c")->{Val
ue} = "Note:";
$Sheet->Range("B$c")->{Val
ue} = "$note[$a]";$c++;
$Sheet->Range("B$c")->{Val
ue} = "";$c++;
$c -= 45 if $b == 5;
} elsif ($b < 11) {
$Sheet->Range("D$c")->{Val
ue} = "Part Number:";
$Sheet->Range("E$c")->{Val
ue} = "$part[$a]";$c++;
$Sheet->Range("D$c")->{Val
ue} = "Height::";
$Sheet->Range("E$c")->{Val
ue} = "$height[$a]";$c++;
$Sheet->Range("D$c")->{Val
ue} = "Width:";
$Sheet->Range("E$c")->{Val
ue} = "$width[$a]";$c++;
$Sheet->Range("D$c")->{Val
ue} = "Square Height:";
$Sheet->Range("E$c")->{Val
ue} = "$sqheight[$a]";$c++;
$Sheet->Range("D$c")->{Val
ue} = "Weight:";
$Sheet->Range("E$c")->{Val
ue} = "$weight[$a]";$c++;
$Sheet->Range("D$c")->{Val
ue} = "Wood:";
$Sheet->Range("E$c")->{Val
ue} = "$wood[$a]";$c++;
$Sheet->Range("D$c")->{Val
ue} = "Quantity:";
$Sheet->Range("E$c")->{Val
ue} = "$quan[$a]";$c++;
$Sheet->Range("D$c")->{Val
ue} = "Note:";
$Sheet->Range("E$c")->{Val
ue} = "$note[$a]";$c++;
$Sheet->Range("E$c")->{Val
ue} = "";$c++;
$c -= 45 if $b == 10;
} else {
$Sheet->Range("G$c")->{Val
ue} = "Part Number:";
$Sheet->Range("H$c")->{Val
ue} = "$part[$a]";$c++;
$Sheet->Range("G$c")->{Val
ue} = "Height::";
$Sheet->Range("H$c")->{Val
ue} = "$height[$a]";$c++;
$Sheet->Range("G$c")->{Val
ue} = "Width:";
$Sheet->Range("H$c")->{Val
ue} = "$width[$a]";$c++;
$Sheet->Range("G$c")->{Val
ue} = "Square Height:";
$Sheet->Range("H$c")->{Val
ue} = "$sqheight[$a]";$c++;
$Sheet->Range("G$c")->{Val
ue} = "Weight:";
$Sheet->Range("H$c")->{Val
ue} = "$weight[$a]";$c++;
$Sheet->Range("G$c")->{Val
ue} = "Wood:";
$Sheet->Range("H$c")->{Val
ue} = "$wood[$a]";$c++;
$Sheet->Range("G$c")->{Val
ue} = "Quantity:";
$Sheet->Range("H$c")->{Val
ue} = "$quan[$a]";$c++;
$Sheet->Range("G$c")->{Val
ue} = "Note:";
$Sheet->Range("H$c")->{Val
ue} = "$note[$a]";$c++;
$Sheet->Range("H$c")->{Val
ue} = "";$c++;
$b=0 if $b == 15;
}
}
$Book->Save;
$Book->Close;
The error signiture is
AppName: perl.exe AppVer: 5.8.2.808 ModName: perl58.dll
ModVer: 5.8.2.808 Offset: 000872e1