回答編集履歴

1

どの部分に時間を要しているのかを表示します

2024/12/05 09:43

投稿

YellowGreen
YellowGreen

スコア841

test CHANGED
@@ -2,6 +2,7 @@
2
2
  ```JavaScript
3
3
  function rireki8() {
4
4
  // 初期設定
5
+ console.time('データの取得');
5
6
  const rowData = 3; // データの開始行
6
7
  const colStart = 8; // 複数の列の開始列(H列)
7
8
  const colEnd = 17; // 複数の列の終了列(Q列)
@@ -13,10 +14,15 @@
13
14
 
14
15
  const ss = SpreadsheetApp.getActiveSpreadsheet();
15
16
  const sheet = ss.getSheetByName('繰越残更新用');
16
- const values = sheet.getDataRange().getValues();
17
+ // const values = sheet.getDataRange().getValues();
18
+ const lastRow = sheet.getLastRow();
19
+ const lastCol = sheet.getLastColumn();
20
+ const values = sheet.getRange(1, 1, lastRow, lastCol).getValues();
21
+ console.timeEnd('データの取得');
17
22
 
18
23
  // 指定の列の中で値が8となっているセルを全て空白にする
19
24
  // ※ 配列valuesの要素は行(row)、列(col)ともシートの行番号、列番号より 1 小さい
25
+ console.time('データの消去');
20
26
  const rangeNames = [];
21
27
  for (let row = rowData - 1; row < values.length; row++) {
22
28
  // 複数の列の範囲の処理
@@ -32,5 +38,6 @@
32
38
  }
33
39
  const rangeList = sheet.getRangeList(rangeNames);
34
40
  rangeList.setValue('');
41
+ console.timeEnd('データの消去');
35
42
  }
36
43
  ```