Search code examples
google-apps-scriptgoogle-sheetsgoogle-appsgoogle-language-api

LanguageApp.translate() causes onEdit(e) to fail


I am trying to write a function in Google Apps Script that triggers whenever a cell is edited in the Google Sheet in which the script is embedded. The purpose of the function is to automatically add the English translation as a note on the edited cell. Here is my code:

function onEdit(e){
  var range = e.range;
  var content = range.getValue();
  var translation = LanguageApp.translate(content, "auto", "en");

  range.setNote(translation);
}

The function runs when I edit a cell, however, it fails with the following message:

Invalid argument: source
    at onEdit(Code:4)

The problem seems to be LanguageApp.translate(), because if I don't use this one, it works. Can anyone help?


Solution

  • "auto" is not a valid argument in LanguageApp.translate. Please see valid language codes here:

    Language Support