Skip to content

Instantly share code, notes, and snippets.

@randomweapon
Created May 22, 2012 01:06
Show Gist options
  • Save randomweapon/2765836 to your computer and use it in GitHub Desktop.
Save randomweapon/2765836 to your computer and use it in GitHub Desktop.
coldfusion function to convert a number into a letter similar to how excel columns work.
<!---
Function Name : numberToLetter()
Author : Ryan Spencer
Created : 22/05/2012
General Notes : convert a number into a letter similar to how excell columns work.
Function in :
number (int)
Function return :
string
--->
<cffunction name="numberToLetter">
<cfargument name="number" default="1" required="Yes" type="numeric" />
<cfscript>
letterRangeStart = 96;
if ( arguments.number LTE 26 )
{
return chr( arguments.number + letterRangeStart );
}
else
{
firstLetter = chr( letterRangeStart + ceiling( arguments.number / 26 ) );
if ( arguments.number MOD 26 NEQ 0 )
secondLetter = chr( letterRangeStart + ( arguments.number MOD 26 ) );
else
secondLetter = chr( letterRangeStart + ( 26 ) );
return firstLetter & secondLetter;
}
</cfscript>
</cffunction>
@sethstone
Copy link

Need to subtract 1 from the inner value passed to Chr() on line 29. Otherwise values come out like this: X, Y, Z, BA, BB

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment