teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

追記1を追記。

2018/04/17 16:17

投稿

koromo_t
koromo_t

スコア60

title CHANGED
File without changes
body CHANGED
@@ -35,4 +35,64 @@
35
35
  みなさまの見解を聞いてみて、私にも理解できそうであれば、
36
36
  ぜひともやってみたいと思うのですが、
37
37
  私には理解できそうになければ、手動でもいいかなとも思っています。
38
- よろしくお願いします。
38
+ よろしくお願いします。
39
+
40
+
41
+ ### 追記1(進行状況)
42
+ 元のリストが更新されたら、
43
+ 「別シート」の一番下の行にINDIRECT関数の数式を入力するようなスクリプトを書きました。
44
+ でもこれだと、元のリストで空白の日があると、瞬く間に意味をなさなくなってしまうようです。
45
+ うーん…。
46
+
47
+ ```javaScript
48
+ function zenbu(){
49
+ var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("コメントの成形");
50
+ Logger.log(sh);
51
+ var LastRow = sh.getLastRow();
52
+ Logger.log(LastRow);
53
+ var rng = sh.getRange(LastRow,1).getValue();
54
+ Logger.log(rng);
55
+ var rng2 = sh.getRange(LastRow,2).getValue();
56
+ Logger.log(rng2);
57
+ if(rng != "" , rng2 != ""){
58
+ sample_Range_merge();
59
+ sample_Range_Formula1();
60
+ sample_Range_Formula2();
61
+ }
62
+ }
63
+
64
+ function sample_Range_merge(){
65
+  var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("コメントの成形");
66
+ var LastRow = sh.getLastRow();
67
+ Logger.log(LastRow);
68
+ var rng = sh.getRange(LastRow+2,2,2);
69
+ var rng2 = sh.getRange(LastRow+2,1,2);
70
+ Logger.log(rng);
71
+ rng.merge();
72
+ rng2.merge();
73
+ }
74
+
75
+ // 日付の入力(INDIRECT)
76
+ function sample_Range_Formula1(){
77
+  var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("コメントの成形");
78
+ var LastRow = sh.getLastRow();
79
+ Logger.log(LastRow);
80
+ var LastRow_Value = sh.getRange(LastRow,1).getValue();
81
+ Logger.log(LastRow_Value);
82
+ var LastRow_Range2 = sh.getRange(LastRow+2,1);
83
+ Logger.log(LastRow_Range2)
84
+ LastRow_Range2.setFormula("=INDIRECT(\"コメント入力用シート!\"&\"R\"&(ROW()+1)/2&\"C\"&column(A$181), FALSE)");
85
+ }
86
+
87
+ // 数式の入力
88
+ function sample_Range_Formula2(){
89
+  var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("コメントの成形");
90
+ var LastRow = sh.getLastRow();
91
+ Logger.log(LastRow);
92
+ var LastRow_Value = sh.getRange(LastRow,1).getValue();
93
+ Logger.log(LastRow_Value);
94
+ var LastRow_Range = sh.getRange(LastRow,2);
95
+ Logger.log(LastRow_Range)
96
+ LastRow_Range.setFormula("=INDIRECT(\"コメント入力用シート!\"&\"R\"&(ROW()+1)/2&\"C\"&column(B$181), FALSE)");
97
+ }
98
+ ```