7
votes

Fonctions personnalisées ne fonctionnant pas dans la feuille de calcul

J'ai suivi les instructions de: https://developers.google.com/apps- script / exécution_custom_fonctions pour créer une fonction personnalisée.

Ni mes fonctions ou même couper et coller des travaux de tutoriel: les fonctions ne sont pas disponibles pour mes feuilles de calcul. J'ai essayé d'enregistrer une version et de publier comme application Web - sans changement. J'ai essayé Google Chrome et Firefox, même résultat. Est-ce que je manque quelque chose de vraiment évident ici?


6 commentaires

Avez-vous essayé de l'exécuter une fois en utilisant la commande 'Exécuter' dans l'éditeur de script? (Vous n'avez pas besoin de publier ni de créer une version lorsque vous utilisez des fonctions personnalisées)


Avez-vous écrit le script de votre tableur ou comme script autonome? Vous devriez l'écrire dans votre feuille de calcul. De plus, comme l'a mentionné Serge, vous devez l'exécuter à partir de l'éditeur de script une fois que toute autorisation nécessaire peut être fournie.


Lorsque j'exécute le script, il exécute haut en bas, allant directement dans des fonctions sans que je les appelais. Cela échoue parce que des arguments n'ont jamais été transmis dans la fonction (s). Si le code était: Fonction Dostuff (arg1, arg2) {si (typeof arg1! = "Numéro") {lancer "arg1 doit être un nombre"; } var out = 1 + 1; retourner; } Cela échouerait sur la ligne de lancer. Cela n'a pas de sens pour moi parce que je n'ai jamais appelé la fonction.


Les lumières arrivent (lentement). J'ai trouvé la liste déroulante qui répertorie la fonction que vous souhaitez exécuter ou déboguer. Cela explique pourquoi une fonction est appelée. Cela ne me donne toujours pas une chance de transmettre des arguments (que je peux voir). Il est possible de passer des arguments dans des fonctions via les menus de course ou de débogage?


@Justintilson no. Mais vous pouvez mettre des déclarations en haut de la fonction pour initialiser les valeurs des variables d'argumentation. Commencez-les une fois que vous avez terminé des tests.


Ou peut-être simplement rafraîchir la feuille de calcul et réessayer :-)


3 Réponses :


2
votes

Vous ne savez pas si c'est ce que vous avez couru dans ... Mais ce qui est arrivé à moi est, je n'ai pas vu ma fonction personnalisée dans la totalité automatique et je pensais que cela ne fonctionne pas. Mais si vous avez simplement tapé = double (A1) dans une cellule (en utilisant l'exemple officiel, en supposant qu'il y a quelque chose dans A1 ...), il va calculer!


1 commentaires

Il m'est arrivé la même chose. Avez-vous réussi à le faire fonctionner avec un autocomplete?



11
votes

Vous devez avoir un commentaire avec @Customfunction de votre fonction sur votre fonction personnalisée. Google Feuilles vous ajoutera alors une fonction personnalisée au menu Autocomplete.


2 commentaires

Il serait vraiment extrêmement agréable que c'était dans la page d'aide pour les scripts personnalisés, qui indique actuellement une fonction écrivant une fonction dans l'éditeur de script, enregistrez-la et bingo Vous pouvez maintenant l'utiliser en entrant = mycée () dans une cellule. Parce que non, vous ne pouvez pas l'utiliser avant de rechercher autour de vous et trouvé quelque chose comme cette page Stackoverflow avec ce peu de conseils utiles.


@Doubleary Je suis sûr que c'était et c'est dans la page d'aide de fonction personnalisée.



0
votes

Votre paramètre Popup Chrome détermine-t-il si le document CustomFunction Autocompletés lorsque vous entrez dans une cellule? Si oui, comment l'ajouteriez-vous comme une exception autorisée dans les paramètres? Activer l'autocomplete est cochée dans le menu Outils de la feuille de calcul.

Ma fonction fonctionne bien si elle est exécutée à partir de l'éditeur de script, mais n'est pas autocomplete lorsque = myCustomfunction ou = myCustomfunction ( entré dans une cellule.


0 commentaires