J'utilise la fonction IMPORTRANGE de Google Sheets pour référencer les données de spreadsheet1
et les afficher sous spreadsheet2
. Cela fonctionne bien, mais si je modifie spreadsheet1
puis que je passe à spreadsheet2
, il n'est pas mis à jour automatiquement, pas plus si je rafraîchit la page. J'ai réglé mon cache pour qu'il soit limité à 0 Mo, il ne devrait donc rien enregistrer localement.
Des idées sur la façon dont je peux le faire pour vérifier plus souvent dans la feuille de calcul principale et mettre à jour ses valeurs en conséquence?
Au lieu d'utiliser IMPORTRANGE
, utilisez script Google Apps
Selon changez les paramètres régionaux, le fuseau horaire, le nouveau calcul et la langue d'une feuille de calcul , l'intervalle de recalcul de IMPORTRANGE
est de 30 minutes. Si un intervalle de recalcul plus court est nécessaire, les paramètres de la formule doivent être modifiés.
Malheureusement, il n'est pas possible d'utiliser les fonctions NOW
, Rand
ou RANDBETWEEN
dans les nouvelles feuilles de calcul. L'alternative consiste donc à utiliser un script Google Apps.
Dans le fil de discussion fourni dans le commentaire de Jacob Jan Tuinstra, il est mentionné l'utilisation d'un paramètre d'URL supplémentaire mis à jour à certains intervalles. Ce fil est de 2011.
L'idée de base était d'ajouter à l'URL quelque chose comme "&workaround="&NOW()
et de définir le paramètre de recalcul sur on change and every minute
, mais cela pourrait être trop fréquent car la tâche d'importation pouvait prendre plus d'une minute, donc au lieu de NOW()
vous devriez l'arrondir à un intervalle suffisant, disons 10 minutes, puis au lieu de NOW()
, utilisez
INT(NOW()/TIME(0;10;0))
Laissez nommer cette formule time_interval
.
La formule de cellule contenant IMPORTRANGE
ressemblera à ceci
=IMPORTRANGE(
"https://docs.google.com/spreadsheets/d/spredsheet_key&workaround="&time_interval,
"Sheet1!A1:AB"
)
Malheureusement, la formule ci-dessus renvoie l'erreur suivante
Erreur
Cette fonction n'est pas autorisée à référencer une cellule avec NOW (), Rand () ou RANDBETWEEN ().
La même chose se produit avec les autres fonctions d'importation (IMPORTDATA
, IMPORTHTML
, IMPORTFEED
, IMPORTXML
)