web-dev-qa-db-fra.com

Comment accorder la permission aux fonctions auto-définies?

J'ai dans Google Sheets une table avec le nom d'un contact dans la colonne 1 et je veux récupérer son adresse e-mail dans la deuxième colonne.

C'est le code que j'ai utilisé:

function email(name) {
  var contacts = ContactsApp.getContactsByName(name);
  var emailAdd = contacts[0].getPrimaryEmail();
  return emailAdd;
}

J'essaie maintenant de tester cette fonction dans une feuille en écrivant =email(A1) (par exemple) dans la colonne 2 et j'obtiens le message d'erreur suivant:

Vous n'êtes pas autorisé à appeler getContactsByName.

Comment puis-je surmonter ce problème? J'ai essayé d'accéder à Ressources> Services Google avancés et à activer l'API de contact, sans plus de chance.

1
Gabriel

Les fonctions personnalisées ne peuvent pas appeler des services nécessitant une autorisation. Source: https://developers.google.com/apps-script/guides/sheets/functions .

Pour résoudre le problème, vous devez utiliser un autre moyen pour appeler la fonction, comme assigner le script à un menu personnalisé, à une image, à un déclencheur installable ou à l’exécuter à partir de l’éditeur de script.

3
Rubén