始めまして。
GAS初心者の者です。
GoogleAppsScript にて、スプレッドシートのシートAのある条件を満たしたときに
シートBに転記されるというシステムを作成したいのですがerrorが出てしまうため
質問させていただきました。
作成したいシステムの詳細はこちらです。
①下記のAシートがある
Aシート:A列に商品名、B列に値段、C列に配送有無、D列に会計有無
②AシートのC列およびD列に文字列が入ったら
Bシートに商品名、値段、配送有無、会計有無を転記させる
下記のコードで実行してみると
dataSheet.getRange(i, 3).getValue() === ''で
「Exception: The starting row of the range is too small.」
とerrorが出てしまいます。
分かりずらかったら申し訳ございません。
どのように修正したらいいか教えていただけますと幸いです。
よろしくお願いいたします。
該当のソースコード
function partMatch(){
const spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
const dataSheet = spreadSheet.getSheetByName("Aシート");
const resultSheet = spreadSheet.getSheetByName("Bシート");
const START_COL_NUM = 1;
const START_ROW_NUM = 1;
const lastCol = dataSheet.getLastColumn();
const lastRow = dataSheet.getLastRow();
const nameArray =dataSheet.getRange(START_ROW_NUM, START_COL_NUM, lastRow, lastCol).getValues();
const nameArrayLen = nameArray.length;
const matchArray = [];
for(var i=0; i<nameArrayLen; i++){
if(dataSheet.getRange(i, 3).getValue() === '' && dataSheet.getRange(i, 4).getValue() === ''){ matchArray.push(nameArray[i]); } }
const matchArrayLen = matchArray.length;
resultSheet.getRange(START_ROW_NUM, START_COL_NUM, matchArrayLen, lastCol).setValues(matchArray);
}

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/12/13 06:11
2022/12/13 07:55