Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

527
Views
Script de hojas de Google: no se puede obtener el color de fondo de las celdas que forman parte de la tabla dinámica

He escrito el siguiente código que replica una tabla dinámica de Google Sheets en HTML junto con el formato para enviar en un correo electrónico.

problema: getBackgrounds() no devuelve los colores de las celdas de la tabla dinámica (siempre devuelve #FFFFF). Verifiqué que el rango sea correcto, porque la tabla se representa con la cantidad correcta de filas y columnas junto con los valores de los datos. Sin embargo, sin estilo. Además, si el color de una celda se cambia manualmente en la interfaz de usuario de Sheets antes de ejecutar el script, getBackgrounds() obtendrá ese color. ¿Cómo puedo recuperar el formato de la tabla dinámica?

código:

 function getData(){ let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("TCD").getRange(5,1).getDataRegion(); let background = ss.getBackgrounds(); let val = ss.getDisplayValues(); let fontColor = ss.getFontColors(); let fontStyles = ss.getFontStyles(); let fontWeight = ss.getFontWeights(); let fontSize = ss.getFontSizes(); return [val,background,fontColor,fontStyles,fontWeight,fontSize]; } function setupEmail(attachment, sendBool) { let ss_data = getData(); let data = ss_data[0]; let background = ss_data[1]; let fontColor = ss_data[2]; let fontStyles = ss_data[3]; let fontWeight = ss_data[4]; let fontSize = ss_data[5]; html += "<table border='1' style=\"background-color:#000000;\">"; for (let i = 0; i < data.length; i++) { html += "<tr>" for (let j = 0; j < data[i].length; j++) { html += "<td style=\"height:20px;background-color:" + background[i][j] + "; color: " + fontColor[i][j] + "; font-style: " + fontStyles[i][j] + "; font-weight: " + fontWeight[i][j] + "; font-size: " + (fontSize[i][j] + 6) + "px; text-align: center;\">" + data[i][j] + "</td>"; Logger.log(background[i][j]); } html += "</tr>"; } html + "</table>"

EDITAR: he solucionado esto codificando el color de fondo. Si alguien sabe por qué no se pueden devolver los colores de fondo de una tabla dinámica, contribuya.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!