Un problema que podemos tener a veces cuando programamos en Google Apps Script es que trabajamos con índices de columna pero necesitamos las columnas en notación con letras (por ejemplo cuando queremos construir fórmulas de forma dinámica) y esta conversión no es fácil.
El código que os dejo a continuación se encarga de hacer esa conversión. Si lo miráis con detenimiento veréis como funciona. Básicamente convierte directamente cada índice con la letra del abecedario que le toca (1-> A, 2-> B, etc...). En el supuesto que el índice sea superior a la letra Z se convertirá lo que se pueda y se generarán las próximas letras de forma cíclica :
function ConvertirIndiceALetra(column, row) { var temp, letra = ''; var first_index = String('A').charCodeAt(0); var last_index = String('Z').charCodeAt(0); var num_letras = last_index - first_index; while (column > 0) { temp = (column - 1) % num_letras; letra = String.fromCharCode(temp + first_index) + letra; column = (column - temp - 1) / num_letras; } return letra + row; }
Aquí tenéis un ejemplo de como queda:
Espero que os sirva, no vaciléis en hacerme llegar cualquier duda.
No hay comentarios:
Publicar un comentario