Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

220
Vistas
Sigo recibiendo un error REF en todas las celdas en las que pego los datos después de escribir la fórmula

Así que escribí este código que pegará las primeras 7 columnas de la hoja 2 (abastecimiento) a la hoja 1 (hoja 1) y también escribí una fórmula para cada celda, de modo que si el código en la hoja de abastecimiento cambia, el de la hoja 1 cambiará, pero cuando ¡Hice eso y obtuve #REF! en cada celda, así que fui a archivo -> configuración y cambié los cálculos -> Cálculo iterativo de desactivado a activado y el error desapareció, pero obtuve 0 en cada celda, que no es el valor correcto de la celda.

Aquí está el código.

 function moveCode() { try { const ss1 = SpreadsheetApp.getActive(); const ss2 = SpreadsheetApp.openById("1A3tJiIEkDP_5R6mEY25IeAsO2XV_oveJwnUovxRd-1U");//or url whatever const ssh = ss1.getSheetByName('Sheet1'); const dsh = ss2.getSheetByName('Sourcing'); const lastRow = dsh.getLastRow(); if (lastRow < 2) return; var srange = dsh.getDataRange(); var formulas = []; var i=0; var j= 0; var row = null; // srange.getNumRows()-1 because skip the first row for( i=0; i<srange.getNumRows()-1; i++ ) { row = []; for( j=1; j<8; j++ ) { row.push("=Sheet1!"+String.fromCharCode(64+j)+(i+2).toString()); // A = 65 } formulas.push(row); } ssh.getRange(2,1,formulas.length,formulas[0].length).setValues(formulas); } catch(err) { Logger.log(err); } }

Creo que hay algo mal con la fórmula, pero no estoy seguro de cuál es el problema.

Si necesita más explicación por favor hágamelo saber.

Gracias.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

En su situación, ¿qué le parece usar IMPORTRANGE ? Cuando se modifica su secuencia de comandos, se convierte en la siguiente.

Guión modificado:

 function moveCode() { try { const ss1 = SpreadsheetApp.getActive(); const ss2 = SpreadsheetApp.openById("1A3tJiIEkDP_5R6mEY25IeAsO2XV_oveJwnUovxRd-1U");//or url whatever const ssh = ss1.getSheetByName('Sheet1'); const dsh = ss2.getSheetByName('Sourcing'); const lastRow = dsh.getLastRow(); if (lastRow < 2) return; ssh.getRange(2, 1).setFormula(`=IMPORTRANGE("${ss2.getUrl()}","'Sourcing'!A2:G${lastRow}")`); } catch (err) { Logger.log(err); } }
  • Después de colocar la fórmula en la celda, acepte cargar los valores de la hoja de cálculo.

Referencias:

  • IMPORTRANGO
  • setFormula(fórmula)
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda