web-dev-qa-db-fra.com

Comment ajouter un lien hypertexte dans un document Google à l'aide d'un script Google

J'ai toujours utilisé la fonction insertText (), mais maintenant je veux écrire un lien dans mes documents Google. L'idéal serait de pouvoir écrire en HTML, mais je ne sais pas comment .. il semble que ce ne soit pas possible avec la fonction insertText ().

Comment puis je faire ça ?

12
qcha

Vous devriez pouvoir utiliser setFormula et la formule Hyperlink comme ceci:

var value = '=HYPERLINK("www.google.com", "Google")';

SpreadsheetApp.getActiveSpreadsheet()
   .getSheetByName("Sheet1")
   .getRange("A1")
   .setFormula(value);

Edit: On dirait que j'ai mal lu la question. Essayez plutôt ceci:

DocumentApp.getActiveDocument().getBody().editAsText().insertText(0, "link text").setLinkUrl("www.google.com");

Edit 2: On dirait que .setLinkUrl() affecte l'ensemble du corps, pas le texte inséré. Si vous placez le texte du lien dans une variable et utilisez la longueur de la variable pour marquer la zone du lien, cela devrait fonctionner. Essayez plutôt ceci:

function insertLink() {
  var text = "link text\n";
  var url = "www.google.com";
  DocumentApp.getActiveDocument().getBody().editAsText().insertText(0, text).setLinkUrl(0, text.length, url);
}
16
SBmore