Okay, let's go through this line by line:

@{$sheet->{Cells}$row};

This line is, for all practical purposes, a no-op.  You aren't assigning this 
array to anything, nor are you doing anything with it.  Not to mention that I'm 
not sure what you're doing on the inside...did you mean $sheet->{Cells}->{$row} 
or $sheet->{Cells}->[$row]?

my @indexes = (2 .. (2+4-1));  

Okay...why not just do: my @indexes=2..5 ?

my @dcells = @{$sheet->{Cells}$row}@indexes;

Again, we're seeing the same weird $sheet->{Cells}$row....and even if that were 
clear, I'm still not sure what you're trying to do here.  Are you trying to 
make an array slice?

open FILE, ">>forgetyou.txt";

Bareword filehandles and two-argument opens are bad 
(http://stackoverflow.com/questions/1479741/why-is-three-argument-open-calls-with-autovivified-filehandles-a-perl-best-pract),
 but we'll overlook this for the moment.

foreach (@dcells) { 
print FILE ($_); 
}

Okay, so from the oddly-formed array above, you're taking a single-element list 
of each item (which is what "($_)" is) and printing that list to your 
filehandle....  Do you mean: print FILE $_; ?

I'd recommend taking a look at what you're actually capturing in your data 
structures by using Data::Dumper (https://metacpan.org/module/Data::Dumper).

-----Original Message-----
From: Ken Furff [mailto:frazzmata...@gmail.com] 
Sent: Monday, May 28, 2012 3:16 PM
To: beginners@perl.org
Subject: lets post this nightmare for the 10th time

I am trying to write a script that pulls some data out of certain columns in a 
spreadsheet and loads them into an array for comparing and updating. I am 
having trouble actually seeing the data, it keeps giving me a HASH message. the 
code is this: 
@{$sheet->{Cells}$row}; 
my @indexes = (2 .. (2+4-1)); 
my @dcells = @{$sheet->{Cells}$row}@indexes; 
open FILE, ">>forgetyou.txt"; 

foreach (@dcells) { 
print FILE ($_); 
} 
close FILE; 
I wanted to print the data from the cell into a text file as a kind of test to 
see what columns were coming up etc. and it gives me this: 
Spreadsheet::ParseExcel::Cell=HASH(0x70a49a8)Spreadsheet::ParseExcel::Cell=HASH(0x70a4a08)Spreadsheet::ParseExcel::Cell=HASH(0x70a4a98)
over and over, I know this is data from the hash but I dont know how to see the 
actual contents of the cell. 

please help 
ken


-- 
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/



--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to