From: mike yue on
I am not sure if this is related to the perl script(uses WriteExcel
module), or related to my MS office excel settings.

e.g. Here are six cells showing in a spreadsheet:

10b1e4 146914
10b818 14db80
8.054E+33 808c940

The "8.054E+33" is actually from a string "8054e30" representing a
memory address, which is definitely not 8.054E+33.
But all other cells are show correct - that is weird.

My perl script uses WriteExcel, and the cells are with format which
only set_align('right').

Anyone got ideas?

Thank you guys for your attention.
From: mike yue on
I didn't use either write or write_string, I used write_col() instead.
$worksheet->write_col( 14, 1, \@start_addrs, $RIGHT_ALIGN );
So the data comes from an array.
Do I need to set the format RIGHT_ALIGN to a particular string or
something? how?
From: Jim Gibson on
In article
<298fb657-9ce0-48bf-a7cb-be7132b6c842(a)i28g2000yqa.googlegroups.com>,
mike yue <needpassion(a)gmail.com> wrote:

> I didn't use either write or write_string, I used write_col() instead.
> $worksheet->write_col( 14, 1, \@start_addrs, $RIGHT_ALIGN );
> So the data comes from an array.
> Do I need to set the format RIGHT_ALIGN to a particular string or
> something? how?

$RIGHT_ALIGN should be a valid Format object reference as returned by
the add_format() method called on a workbook object:

my $RIGHT_ALIGN = $workbook->add_format();

The format should not change the interpretation of the object type as
determined by the write_col method.

Try using write_string() to store the data instead of write_col(). You
will have to store one cell at a time in a loop.

--
Jim Gibson
From: mike yue on
On Aug 4, 11:07 am, Jim Gibson <jimsgib...(a)gmail.com> wrote:
> In article
> <298fb657-9ce0-48bf-a7cb-be7132b6c...(a)i28g2000yqa.googlegroups.com>,
>
> mike yue <needpass...(a)gmail.com> wrote:
> > I didn't use either write or write_string, I used write_col() instead.
> >     $worksheet->write_col( 14, 1, \@start_addrs, $RIGHT_ALIGN );
> > So the data comes from an array.
> > Do I need to set the format RIGHT_ALIGN to a particular string or
> > something? how?
>
> $RIGHT_ALIGN should be a valid Format object reference as returned by
> the add_format() method called on a workbook object:
>
>   my $RIGHT_ALIGN = $workbook->add_format();
>
> The format should not change the interpretation of the object type as
> determined by the write_col method.
>
> Try using write_string() to store the data instead of write_col(). You
> will have to store one cell at a time in a loop.
>
> --
> Jim Gibson

I've done that but don't feel good with it - Still wonder if there is
a better solution.
Thanks Jim.
From: mike yue on
Also Thanks to Sherm and Peter!