En este ejemplo vamos a montar un sistema que cada día nos seleccione una columna con la fecha actual tal y como podemos ver en este imagen:
function onOpen() { MarkToday(); } function MarkToday() { var today = new Date(); var today_day = today.getDate(); var today_month = today.getMonth(); var today_year = today.getFullYear(); var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); var range = sheet.getRange(1,1,1,sheet.getLastColumn() ); var caption = range.getValues()[0]; //Buscamos el indice de columna que nos concuerda con el dia actual var index = 0; for(var i = 0 ; i < caption.length ; ++i) { var d = new Date(caption[i]); //Compensamos la diferencia horaria entre el servidor de Google y nuestra situación. //De no compensar esta diferencia nos puede marcar dias diferentes de los reales. d.setTime( d.getTime() + 12*60*60*1000 ); if(today_day == d.getDate() && today_month == d.getMonth() && today_year == d.getFullYear()) { index = i+1; break; } } //Eliminamos marcas que pudieramos tener range.setBackground("white"); //Marcamos el dia actual sheet.getRange(1,index).setBackground("yellow"); }
Como podéis ver el código no es complicado y se puede adaptar a lo que necesitéis. Se os ocurre alguna otra funcionalidad que se podría aplicar?
No vaciléis en hacerme llegar vuestras dudas.
Nos vemos
Perdona mi ignorancia, llevo intentando hacer esto durante mucho tiempo pero no consigo que funcione. Me podrías decir exactamente donde debería introducir el rango en donde tengo las fechas (en columnas) . En mi caso sería C3:NP3
ResponderEliminarTe estaría eternamente agradecido
Donde se introduce la info es aquí: sheet.getRange(1,index).setBackground("yellow");
EliminarPara tu caso concreto seria:
// 3 sería el C
for(var i = 3 ; i < *el numero que tu quieras* ; ++i)
{
sheet.getRange(u,3).setBackground("yellow");
}
Tal vez te iria bien repasar estos otros tutoriales:
https://www.tutorialesgoogleappscripts.com/2015/02/como-escribir-en-una-celda-de-una-hoja.html
https://www.tutorialesgoogleappscripts.com/p/apps-scripts-google-sheets.html