in reply to Read Excel cell

Reposting old questions wont bring you much on perlmonks, but I try to help you anyway.

First of all you should convert your code using a loop, like below. Then it gets tidy enough to make changes fast and avoid a lot of minor errors which are likely in repetitive code.

Should your output be XML ("output.xml")? Because it isn't yet. Have a look on XML::Simple's function xmlout() for that.

my @CELLS = ( 'pisbn', 'isbn', 'rendition', ...); my %bookdata; # [...] for my $n (0..13) { if($cell = $sheet->{Cells}[$i][$n]) { my $val = $cell->{Val}; #If you would need the data for later: $bookdata{@CELLS[$n]} = $val; #print"\n--", $val; $getfile = $val; } }

PS: Could you use <readmore> tags for code of this length in the future, please.

Update: Are you aware that your code overwrites the output file for every row ($i iteration) and sheet? This could be one of you main problems.