質問編集履歴

1

追記1を追記。

2018/04/17 16:17

投稿

koromo_t
koromo_t

スコア60

test CHANGED
File without changes
test CHANGED
@@ -73,3 +73,123 @@
73
73
  私には理解できそうになければ、手動でもいいかなとも思っています。
74
74
 
75
75
  よろしくお願いします。
76
+
77
+
78
+
79
+
80
+
81
+ ### 追記1(進行状況)
82
+
83
+ 元のリストが更新されたら、
84
+
85
+ 「別シート」の一番下の行にINDIRECT関数の数式を入力するようなスクリプトを書きました。
86
+
87
+ でもこれだと、元のリストで空白の日があると、瞬く間に意味をなさなくなってしまうようです。
88
+
89
+ うーん…。
90
+
91
+
92
+
93
+ ```javaScript
94
+
95
+ function zenbu(){
96
+
97
+ var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("コメントの成形");
98
+
99
+ Logger.log(sh);
100
+
101
+ var LastRow = sh.getLastRow();
102
+
103
+ Logger.log(LastRow);
104
+
105
+ var rng = sh.getRange(LastRow,1).getValue();
106
+
107
+ Logger.log(rng);
108
+
109
+ var rng2 = sh.getRange(LastRow,2).getValue();
110
+
111
+ Logger.log(rng2);
112
+
113
+ if(rng != "" , rng2 != ""){
114
+
115
+ sample_Range_merge();
116
+
117
+ sample_Range_Formula1();
118
+
119
+ sample_Range_Formula2();
120
+
121
+ }
122
+
123
+ }
124
+
125
+
126
+
127
+ function sample_Range_merge(){
128
+
129
+  var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("コメントの成形");
130
+
131
+ var LastRow = sh.getLastRow();
132
+
133
+ Logger.log(LastRow);
134
+
135
+ var rng = sh.getRange(LastRow+2,2,2);
136
+
137
+ var rng2 = sh.getRange(LastRow+2,1,2);
138
+
139
+ Logger.log(rng);
140
+
141
+ rng.merge();
142
+
143
+ rng2.merge();
144
+
145
+ }
146
+
147
+
148
+
149
+ // 日付の入力(INDIRECT)
150
+
151
+ function sample_Range_Formula1(){
152
+
153
+  var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("コメントの成形");
154
+
155
+ var LastRow = sh.getLastRow();
156
+
157
+ Logger.log(LastRow);
158
+
159
+ var LastRow_Value = sh.getRange(LastRow,1).getValue();
160
+
161
+ Logger.log(LastRow_Value);
162
+
163
+ var LastRow_Range2 = sh.getRange(LastRow+2,1);
164
+
165
+ Logger.log(LastRow_Range2)
166
+
167
+ LastRow_Range2.setFormula("=INDIRECT(\"コメント入力用シート!\"&\"R\"&(ROW()+1)/2&\"C\"&column(A$181), FALSE)");
168
+
169
+ }
170
+
171
+
172
+
173
+ // 数式の入力
174
+
175
+ function sample_Range_Formula2(){
176
+
177
+  var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("コメントの成形");
178
+
179
+ var LastRow = sh.getLastRow();
180
+
181
+ Logger.log(LastRow);
182
+
183
+ var LastRow_Value = sh.getRange(LastRow,1).getValue();
184
+
185
+ Logger.log(LastRow_Value);
186
+
187
+ var LastRow_Range = sh.getRange(LastRow,2);
188
+
189
+ Logger.log(LastRow_Range)
190
+
191
+ LastRow_Range.setFormula("=INDIRECT(\"コメント入力用シート!\"&\"R\"&(ROW()+1)/2&\"C\"&column(B$181), FALSE)");
192
+
193
+ }
194
+
195
+ ```