2016-09-20 2 views
0

Я пытаюсь понять, почему следующий код не работает:IndexOf не работает с MailApp.sendEmail

function indextest() { 
var sheet = SpreadsheetApp.openById("1rMUrZFie94RLFDKaWVBPsQ-jebL8wNA6qsZWivMBDTk").getActiveSheet(); 
var data = sheet.getRange("a1:a4").getValues(); 
var a = data.indexOf("c"); 
MailApp.sendEmail ("[email protected]", a ,"") 
} 

я должен получить по электронной почте с текстом «3» в теме письма. Вместо этого я получаю «-1», подразумевая, что он не смог найти «c» в массиве «a1: a4». Но когда вы переходите на электронную таблицу, «c» можно найти в ячейке A3.

Вот таблица: https://docs.google.com/spreadsheets/d/1rMUrZFie94RLFDKaWVBPsQ-jebL8wNA6qsZWivMBDTk/view#gid=0

ответ

1

data выглядит следующим образом [["a"],["b"], ["c"], ["d"]], потому что приложения скрипт получает 2d массивы независимо от ширины, чтобы быть однозначными, это всегда п * м матрицы.

Попробуйте indexOf(["a"]) вместо этого.