Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: Get Excel column name for given decimal number

by Tux (Canon)
on Mar 26, 2020 at 13:04 UTC ( [id://11114673]=note: print w/replies, xml ) Need Help??


in reply to Get Excel column name for given decimal number

Hmm, that is a bit over-complicated.

See Spreadsheet::Read::cell2cr:

# cell2cr ("D18") => (4, 18) sub cell2cr { ref $_[0] eq __PACKAGE__ and shift; my ($cc, $r) = (uc ($_[0]||"") =~ m/^([A-Z]+)([0-9]+)$/) or return + (0, 0); my $c = 0; while ($cc =~ s/^([A-Z])//) { $c = 26 * $c + 1 + ord ($1) - ord ("A"); } ($c, $r); } # cell2cr

update:

haukex is correct, as always. Sorry for not reading more closely.

Look at col2label instead:

# col2label (4) => "D" sub col2label { ref $_[0] eq __PACKAGE__ and shift; my $c = shift; defined $c && $c > 0 or return ""; my $cell = ""; while ($c) { use integer; substr $cell, 0, 0, chr (--$c % 26 + ord "A"); $c /= 26; } $cell; } # col2label

Enjoy, Have FUN! H.Merijn

Replies are listed 'Best First'.
Re^2: Get Excel column name for given decimal number
by haukex (Archbishop) on Mar 26, 2020 at 13:13 UTC

    Nice, I started looking in the various Spreadsheet::* modules but of course it's in Spreadsheet::Read ;-) Though I do think OP wants col2label instead.

Re^2: Get Excel column name for given decimal number
by Akshit (Novice) on Mar 26, 2020 at 13:19 UTC

    Thanks, Tux!

    But Whatever the code I added is part of my other big code.

    I am using WIN32::OLE library for excel. Do you think still it works ?

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11114673]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (6)
As of 2024-04-19 22:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found