--- Lawrence Statton XE2/N1GAK <[EMAIL PROTECTED]>
wrote:

> > --- Lawrence Statton XE2/N1GAK
> <[EMAIL PROTECTED]>
> > I am using Spreadsheet::WriteExcel to populate
> certain
> > columns which is working, but in column A for
> example
> > I am using the method write_col which requires a
> > reference,
> 
> 
> Not just "a reference" but an ARRAY reference for
> all the values that
> will go into that column (or a reference to an array
> of arrayrefs to
> write a rectangular area in one shot).  The example
> about a fifth of
> the way through the Spreadsheet::WriteExcel pod
> shows it pretty clearly.
> 
> > I am printing the absolute path
> > /home/dbsmith/passwd.dubhpr01.sun when all I need
> to
> > print is sun and in column B all I will need is
> > dubhpr01 or the hostname.  
> 
> So stop printing what you don't need, and start
> printing what you do
> need :) :) :)  This code is not writing itself --
> you have to take a
> smidgeon of responsibility for its output.  
> 
> 
> > For this reason I am trying
> > to use a regexp to grab $1 and $2 or sun and
> dubhpr01 
> > then use write_col method.  This is not working
> and in
> > my test code I want to know what data structure to
> > use.
> > 
> 
> Are you sure that write_col is the method you want
> to use in this
> case?
> 
> > use strict;
> > use warnings;
> > use Data::Dumper;
> > my $string =
> qw(/home/dbsmith/passwd.dubhpr01.sun);
> > my ($host,@OS) = $string =~
> m|\.(\w+\d+)\.(\w+)$|i;
> > my $aref = \$host;
> > my $aref2 = [EMAIL PROTECTED];
> 
> Slow down a bit -- think about what you are writing.
>  I don't want to
> seem bitchy, but you often post code that looks like
> you just keep
> throwing code into the file willy-nilly trying to
> see what sticks.
> This code CLEARLY has that feel.
> 
> > 
> > #print $1,"\n";
> > #print $2,"\n";
> > if (ref ($aref) eq "SCALAR") {
> >    print "yes\n";
> > }
> > print "newline\n";
> > 
> > if (ref ($aref2) eq "ARRAY") {
> >    print "YES\n";
> > }
> > print ${$aref},"\n";
> > print @{$aref2}[0],"\n";
> > 
> > __OUTPUT__
> > 
> > yes
> > newline
> > YES
> > dubhpr01
> > sun
> > 
> > so my question 1 is what is @{$aref2}[0] and
> 
> $aref2 is        [ 'sun' ]
> @{$aref2} is     ( 'sun' )
> @{$aref2}[0] is  'sun'
> 
> 
> Perhaps the reason you find yourself getting
> confusing output is your
> confusing variablenames. "aref2" says nothing about
> the data it
> contains, and is dangerously similar to "aref".  If
> you are debugging
> something, you are going to see what SHOULD be there
> instead of what
> IS there.
> 
> > why isn't write_col writing its data from my code
> > below:
> > 
> > ##-- Write data from ref and format cells A2 and
> down
> > --##
> > 
> > my $string =
> qw(/home/dbsmith/passwd.dubhpr01.sun);
> > my @host   = $string =~ m|\.(\w+\d+)$|i;
> > my $aref   = [EMAIL PROTECTED];
> >
> > print @{$aref},"\n";
> > if (ref ($aref) eq "ARRAY") {
> >     print "YES\n";
> >    
> $worksheet->write_col('A2',$aref,$sheet_format);
> > }
> 
> It worked for me.  (Outside of the fact I had to
> redact the
> $sheet_format because you didn't post a complete
> runnable program.)
> 
> > 
> > I then tried 
> > 
> >
> $worksheet->write_col('A2',@{$aref},$sheet_format);
> > 
> > and I get error:
> > [error redacted]
> 
> Well, the documentation pretty clearly calls for an
> arrayref in the
> second argument to write_col, so I have no idea why
> you tried passing
> in an array.
> 
> > 
> > 
> > thank you
> > derek
> > 
> 


I know its an ARRAY reference why u think I wrote eq
"ARRAY".

I am not 100% sure write_col is the method I need,
that is why I post emails to this list, but I need to
write data in each respective column so using
write_col seems logical.

Sorry u think that, but I do think about what I write
and how to get to my end goal and yes you do sound
bitchy and rude! My apoligies I am not a Perl know it
all but this list is for posting questions so why do
people like u have to make things more difficult by
being negative?

yes the code I provided with the OUTPUT was only test
code or as u state it "willy nilly." I did not want to
post all 186 lines so I took out what is not working
which is know as a snippett.

If you seem to have all the Perl knowledge then get
this code working and send me the output BECAUSE IT IS
NOT WORKING FOR ME!


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to