回答編集履歴

2

誤字修正

2023/01/05 04:55

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -1,19 +1,19 @@
1
1
  ### 不具合の原因
2
2
  - 毎回forの中で配列を初期化(配列を空に)しているので、forの最後の繰り返し処理の値しかpushされていません。
3
- - そしてpushで作る配列が2次元配列になってないのでは?と思push時に[]をつけまた。
3
+ - そしてpushで作る配列が2次元配列になってないのではょうか?
4
4
 
5
- 🚫質問者様のコードの完成配列例:
5
+ ##### 🚫 質問者様のコードの完成配列例:
6
6
  ```javascript
7
- mb11ves = [ 1行目の30列目の値, 1行目の32列目の値, 1行目の30列目の値, 以下略 ]
7
+ mb11ves = [ 1行目の30列目の値, 1行目の32列目の値, 1行目の31列目の値, 以下略 ]
8
8
  ```
9
9
 
10
- ✅必要な完成配列例:
10
+ ##### 必要な完成配列例:
11
11
  ```javascript
12
12
  mb11ves = [
13
- [7行目の30列目の値, 7行目の32列目の値, 7行目の30列目の値, 以下略],
13
+ [7行目の30列目の値, 7行目の32列目の値, 7行目の31列目の値, 以下略],
14
- [6行目の30列目の値, 6行目の32列目の値, 6行目の30列目の値, 以下略],
14
+ [6行目の30列目の値, 6行目の32列目の値, 6行目の31列目の値, 以下略],
15
15
  (中略)
16
- [1行目の30列目の値, 1行目の32列目の値, 1行目の30列目の値, 以下略],
16
+ [1行目の30列目の値, 1行目の32列目の値, 1行目の31列目の値, 以下略],
17
17
  ]
18
18
  ```
19
19
 

1

詳細

2023/01/05 04:53

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -1,3 +1,23 @@
1
+ ### 不具合の原因
2
+ - 毎回forの中で配列を初期化(配列を空に)しているので、forの最後の繰り返し処理の値しかpushされていません。
3
+ - そしてpushで作る配列が2次元配列になってないのでは?と思いpush時に[]をつけました。
4
+
5
+ 🚫質問者様のコードの完成配列例:
6
+ ```javascript
7
+ mb11ves = [ 1行目の30列目の値, 1行目の32列目の値, 1行目の30列目の値, 以下略 ]
8
+ ```
9
+
10
+ ✅必要な完成配列例:
11
+ ```javascript
12
+ mb11ves = [
13
+ [7行目の30列目の値, 7行目の32列目の値, 7行目の30列目の値, 以下略],
14
+ [6行目の30列目の値, 6行目の32列目の値, 6行目の30列目の値, 以下略],
15
+ (中略)
16
+ [1行目の30列目の値, 1行目の32列目の値, 1行目の30列目の値, 以下略],
17
+ ]
18
+ ```
19
+
20
+ ### 修正コード
1
21
  動作確認をしていませんが、これでどうでしょう?
2
22
 
3
23
  ```javascript
@@ -11,11 +31,9 @@
11
31
 
12
32
  for (var i = mb11v; i > 0; i--) {
13
33
  // var mb11ves = [] // 削除
14
- mb11ves.push([ // 2次元配列にするために[]をつける
34
+ mb11ves.push([ // 2次元配列にするために [ をつける
15
35
  sheet.getRange(row - 1 + i, 30).getValue(), sheet.getRange(row - 1 + i, 32).getValue(), sheet.getRange(row - 1 + i, 31).getValue(), sheet.getRange(row - 1 + i, 33).getValue(), sheet.getRange(row - 1 + i, 34).getValue(), sheet.getRange(row - 1 + i, 35).getValue(), sheet.getRange(row - 1 + i, 37).getValue()
16
- ]); // 2次元配列にするために[]をつける
36
+ ]); // 2次元配列にするために ] をつける
17
37
  }
18
38
  }
19
39
  ```
20
- - 毎回forの中で配列を初期化しているのでダメでした。
21
- - 2次元配列になってないのでは?と思いpushで[]をつけました。