(GAS)VBAより少し使い勝手が悪いRangeのループ

EXCELのVBAでは利用するケースが多い「所定範囲に対する処理」ですが、Google Apps Scriptでもやはり利用するケースが多いです(当たり前ですが・・・)

VBAでは、Rangeをfor文で回す場合は、1重のループで処理ができたのですが、Google Apps Scriptでは、2重のループが必要になります。
縦X横という形になっています。
1重目では、行ごとを抽出し、
2重目出は、列ごと(結果的にセルこご)の抽出となります。

function myFunction() {
  let spsheet = SpreadsheetApp.openByUrl("URL")
  let act_sheet1 = spsheet.getSheetByName("sheet1")
  let act_sheet2 = spsheet.getSheetByName("sheet2")

  l = 2
  let rg = "A2:Z10"
  for(let cc of act_sheet1.getRange(rg).getValues()){ // ←1重
    for(let c2 of cc){                // ←2重
      let rr = String(c2).match(/〇〇/) 
      if((!!rr) && (rr.length > 0)){
        console.log(rr)
        act_sheet2.getRange("A"+l).setValue(c2) ;
        l++ ;
      }
    }  
  }
}


お問合せ・IT改善のご相談はこちら