質問編集履歴

1

補足:修正前のコードの概要と修正した点について

2024/04/24 05:06

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -7,8 +7,7 @@
7
7
 
8
8
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2024-04-24/f5fa9859-a178-417a-b522-b9a07d593c80.png)
9
9
 
10
- スケジュール開始時間とスケジュール表の時間軸を比較し、該当する時間帯の行に詳細を追加していきたいです。自力で組んだスクリプトでも一応正常に動くのですが、速度やデータ量の面でもっと効率よく動かしたいため書き直しています。修正前のコードはあまりにも長く非効率なのでいったん割愛させていただきます。
10
+ **スケジュール開始時間とスケジュール表の時間軸を比較し、該当する時間帯の行に詳細を追加**していきたいです。自力で組んだスクリプトでも一応正常に動くのですが、速度やデータ量の面で**もっと効率よく動かしたいため書き直し**ています。修正前のコードはあまりにも長く非効率なので~~いったん割愛させていただきます~~補足しました
11
-
12
11
  ### 発生している問題・分からないこと
13
12
  API呼出回数の削減のため、getValue、setValueの数を減らして書いたコードです。
14
13
  [j][0] <= 開始時刻 < [k][0] で条件指定してインデックス番号から該当する時間帯を特定したところまでは良いのですが、[j][1]と[j][2]にあたるセルをどう定義すればよいのかが分かりません。
@@ -72,7 +71,7 @@
72
71
  - [ ] その他
73
72
 
74
73
  ##### 上記の詳細・結果
75
- 時間軸のところのfor文を下記のようにシートの行番号/列番号に置き換えてみたりもしたのですが、配列に格納してあるのでなるべくこの書き方は避けたいと思っています。
74
+ 時間軸のところのfor文を下記のようにシートの行番号/列番号に置き換えてみたりもしたのですが、配列に格納してあるので**なるべくこの書き方は避けたい**と思っています。
76
75
 
77
76
  ---
78
77
  for(var j = 7, k = 9; j <= 49, k <= 51; j+=2, k+=2){
@@ -86,4 +85,15 @@
86
85
  ---
87
86
 
88
87
  ### 補足
88
+ 修正前のスクリプトについて、冒頭では割愛しておりましたがざっくりと補足させていただきます。
89
- 特になし
89
+ ##### 修正前
90
+ ・記入するスケジュール名、URLをそれぞれ別で定義していた
91
+ ・timeJ, timeKをループのたびにgetRange,getValueで取得していた
92
+ ・j,kは行番号、列番号
93
+ ・書き込む範囲はD列のj行目、E列のj行目をgetRangeしていた
94
+ ##### 現段階での修正点
95
+ 前提:API呼出回数を削減する
96
+ ・スケジュール名、URLはまとめて配列に格納
97
+ ・j,kはインデックス番号
98
+ ・書き込む範囲は配列displayTime[j][1],[j][2]
99
+