2016-10-16 2 views
0

У меня есть система, в которой пользователи вводят информацию о форме Google, а приложение указывает информацию в календаре., если значение равно значению в другой таблице

я интересно, если есть возможность сделать чек appscript, если введенная информация соответствует любому из другой таблицы (например: запрещенная информация черный список)

Я полагаю, что я могу сделать что-то вроде:

var name = sheet.getRange(lr,name,1,1).getValue(); 
var ban = SpreadsheetApp.openById('ID of another sheet').getValue(); 
if (name == ban){ 
return; 
}; 

, но, видимо, я ошибаюсь, и он не работает.
Я думаю, что есть две проблемы с тем, что я пытаюсь сделать:
код 1.the для получения значений с другого листа не работает
значения 2.the от другого листа не являются ни одним значением, но несколько имена в столбце, поэтому я не могу сравнивать имя и запрет переменных (либо это, либо значения не могут быть записаны в одну переменную)

Я помню, я видел код, который может сохранять несколько значений в одном переменная, я думаю, это выглядит как

var ban=i,i++; 

или что-то в этом роде, но что я набрал, кажется, не правильный, поскольку он не работает.

Мне интересно, как получить значения из другой электронной таблицы и записать несколько значений в одну переменную.

Прошу прощения, если я сделал какую-то глупую ошибку в коде, я на самом деле не знаю, как кодировать, я просто код для googling и микширования, который я нахожу в Интернете.
Благодаря

+1

внимательно изучите, что делает ваш код с таблицей. он получает значение ... чего? какой лист? какая ячейка? это ваша проблема. –

ответ

3

Прежде всего, я предполагаю, что вы определили переменную листа что-то вроде этого:

var sheet = SpreadsheetApp.openById("ID of sheet where the data is stored").getSheetByName("Name"); 

Следующий шаг должен был бы определить переменную запрета, как это:

var ban = SpreadsheetApp.openById("ID of another sheet").getSheetByName("Name").getDataRange().getValues(); 

сейчас проверяемая часть, соответствующая информации или нет.

var count=0; 

for(var i=0;i<ban.length;i++) 
{ 
    if(name==ban[i]) 
    { 
     count++; 
    } 
} 

if(count!=0) 
{ 
    Logger.log("Match found"); 
} 

Чтобы проверить вывод кода при запуске его необходимо нажать CTRL + ENTER ... это будет открывать журналы, где, если вы найдете журнал, как «Матч найдены» ... это означает, код правильный ... иначе может быть и другая ошибка ... возможно, формат данных электронной таблицы, где хранятся значения Banned.

Смежные вопросы