2016-10-16 12 views
0

ユーザーがGoogleフォームの情報を入力するシステムがあり、appscriptはその情報をカレンダーに入れます。他のスプレッドシートの値と等しい場合

入力された情報は、別のスプレッドシート(​​すなわち:禁止された情報をブラックリスト)から何も一致した場合appscriptチェックをする可能性があります場合、私は不思議だ

私は、私のような何かを行うことができます図:

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

しかし、明らかに私は間違っており、うまくいきません。
私は何をしようとしているの2つの問題があると思う:
1.別のシートから値を取得するコードは動作しません
2.別のシートからの値は単一の値ではありません変数の名前と禁止を比較することはできません(どちらか1つの変数に値を書き込むことはできません)

複数の値を1つに保存することができます変数、私はそれがそうだと思うそれはそうだと思う

var ban=i,i++; 

またはそれらの行の何か私はタイプされていませんが正しく動作しないので、正しいようです。

別のスプレッドシートから値を取得し、複数の値を1つの変数に書き込む方法を知っています。

コードで馬鹿馬鹿しいエラーが発生した場合は、実際にコードする方法はわかりません。私はオンラインで見つけたグーグルとコードをミックスしています。
おかげで、すべての

+1

は、コードがスプレッドシートで行っていることを詳しく見てください。それは...何の価値を得ますか?どのシート?どのセル?あなたの問題です。 –

答えて

3

まず、私はあなたが可変シートを定義したこのような何か推測しています:今

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

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

を次のステップは、このような変数禁止を定義することです情報が一致する部分を確認する。それが意味

var count=0; 

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

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

あなたがそれを実行するときに、これはあなたがログを見つけた場合、「一致が見つかる」としてログを開く... + Ctrlキーを押し入力する必要があり、コードの出力を確認するには...コードが正しいです...他のエラーがあるかもしれません...おそらく禁止された値が格納されているスプレッドシートのデータ形式。

関連する問題