/**
* Convert a whole number that is more than zero to a spreadsheet column letters. eg. 1 -> A
* Source: https://stackoverflow.com/questions/45787459/convert-number-to-alphabet-string-javascript/45787487
*
* @param {Number} num - (required) The number to convert to a spreadsheet column letter. Must be greater than zero.
*
* @returns {(String|undefined)} The spreadsheet column letter or undefined.
*/
function numToSSColumnLetter(num) {
let columnLetter = "",
t;
while (num > 0) {
t = (num - 1) % 26;
columnLetter = String.fromCharCode(65 + t) + columnLetter;
num = (num - t) / 26 | 0;
}
return columnLetter || undefined;
}
numToSSColumn(0); // undefined
numToSSColumn(1); // A
numToSSColumn(26); // Z
numToSSColumn(-1); // undefined
numToSSColumn(27); // AA
numToSSColumn(475254); // ZZZZ