J'ai une feuille google avec un script attaché. Il existe une fonction onOpen() qui crée un menu dans l'interface utilisateur, qui est une liste de colonnes pouvant être triées. Les fonctions de tri individuelles, appelées en sélectionnant un élément de menu, sont des variantes (avec différentes colonnes triées) du script ci-dessous.#ERROR! se produit, mais disparaît en cliquant sur la cellule et en appuyant sur retour
Le problème: sur la feuille, la fonction renvoie "#ERROR!" et en cliquant sur la cellule contenant la fonction, et en appuyant simplement sur Entrée, la cellule se répète magiquement et affiche la plage correcte entièrement comme il se doit.
Je ne sais pas s'il y a un problème avec la formule, ou avec le script. Les idées actuelles sur ce qui pourrait être le problème sont: Quelque chose à voir avec le fait que la formule fait référence à une autre feuille. Des idées sur où commencer ou pourquoi l'erreur initiale (qui ne semble pas rester après avoir recalculé la cellule) se produit?
function sortJoindate() {
var sortvar = "Join Date";
var sheet = SpreadsheetApp.getActiveSheet();
var currentSort = sheet.getRange("A2").getValue();
var pmdata = sheet.getRange("A3");
if (currentSort == "SORTED BY " + sortvar + " ASC") {
sheet.getRange("A2").setValue("SORTED BY Join Date DESC");
pmdata.setValue("=QUERY(MemberData!A:J,\"select A,D,E,F,C,H,B where J = '\" & A1 & \"' order by A DESC \"");
} else {
sheet.getRange("A2").setValue("SORTED BY " + sortvar + " ASC");
pmdata.setValue("=QUERY(MemberData!A:J,\"select A,D,E,F,C,H,B where J = '\" & A1 & \"' order by A ASC \"");
}
SpreadsheetApp.flush();
}
After running script, BEFORE pressing enter on cell After running script, AFTER pressing enter on cell