1
Googleコンタクトをシートから更新しようとしています。シートの列Iを検索して「保留中」を確認したい行が保留中の場合は、その行のG、H、E列の値を取り出し、その連絡先のノートに追加します。Googleのアプリケーションスクリプトを使用してマークされたシートとGoogleコンタクトを更新する
これまでのところ私はこれを持っています。現在のところ、 '保留中'とマークされた連絡先の行を取得する方法に固執しています。
function test(){
var ss = SpreadsheetApp.getActiveSheet();
var data = ss.getDataRange().getValues(); // read all data in the sheet
for(n=9;n<data.length;++n){ // iterate row by row and examine data in column I
if(data[n][0].toString().match('pending')){
var row = ???
var name = ss.getRange(row, 1).getValue();
var contacts = ContactsApp.getContactsByName(name);
for (var i in contacts) {
var donate = ss.getRange(row, 7).getValue();
var pickup = ss.getRange(row, 8).getValue();
var item = ss.getRange(row, 5).getValue();
contacts[i].setNotes(donate + '\n\n' + item + '\n\n' + pickup + '\n\n');}
ss.getRange('9**row**').setValue('done');
}
}
}
を使用することを検討すべきである 'getSheetById'?スクリプトの場合、最後の行を除いて動作します...反復しません...保留中です... – testing123
'SpreadsheetApp.getActiveSheet();'は必ず正しいワークシートからデータを読み取っているとは限りません。 –
私は自分の答えを更新しました。今すぐチェックしてください。 'for'ループのちょっとした変更 –