質問編集履歴
3
間違っていたため修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -22,7 +22,7 @@
|
|
22
22
|
|
23
23
|
|:--|:--|:--:|--:||:--|:--:|--:|
|
24
24
|
|
25
|
-
|1行目|回答者|
|
25
|
+
|1行目|回答者|Aさん|||Bさん|||Cさん|||
|
26
26
|
|
27
27
|
|2行目||第2地域|||第3地域|||第4地域|||
|
28
28
|
|
2
表を追記しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -18,60 +18,60 @@
|
|
18
18
|
|
19
19
|
<コピー元データのシート>
|
20
20
|
|
21
|
-
|A列|B列|C列|D列|E列|F列|G列|H列|I列
|
21
|
+
|||A列|B列|C列|D列|E列|F列|G列|H列|I列
|
22
|
-
|
22
|
+
|
23
|
-
|:--|:--:|--:||:--|:--:|--:|
|
23
|
+
|:--|:--|:--:|--:||:--|:--:|--:|
|
24
|
-
|
24
|
+
|
25
|
-
|Aさん|||Bさん|||Cさん|||
|
25
|
+
|1行目|回答者||Aさん|||Bさん|||Cさん|||
|
26
|
-
|
26
|
+
|
27
|
-
|第2地域|||第3地域|||第4地域|||
|
27
|
+
|2行目||第2地域|||第3地域|||第4地域|||
|
28
|
-
|
28
|
+
|
29
|
-
|満足度|獲得数|コメント|満足度|獲得数|コメント|満足度|獲得数|コメント|
|
29
|
+
|3行目||満足度|獲得数|コメント|満足度|獲得数|コメント|満足度|獲得数|コメント|
|
30
|
+
|
31
|
+
|4行目|佐々木さん|8|9||||||
|
32
|
+
|
33
|
+
|5行目|佐藤さん|10|11|親切な対応|10|10|話し上手||
|
34
|
+
|
35
|
+
|6行目|中村さん|10|11||9|10|||
|
36
|
+
|
37
|
+
|7行目|林さん|||||||5|7|連絡が早い|
|
38
|
+
|
39
|
+
|8行目|柴咲さん|||||||5|7||
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
②それぞれの担当者にデータを反映する。
|
46
|
+
|
47
|
+
※担当者のシートに転機するのは三行ずつです。
|
48
|
+
|
49
|
+
※コメントがない物もありますが、満足度と獲得数は必ず入力されています。
|
50
|
+
|
51
|
+
そのため、満足度が入っているセルからそれぞれコピーしたいです。
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
例.Aさんの場合はA4からC6までのデータをそのまま反映したいです。
|
56
|
+
|
57
|
+
Cさんの場合はG7からI8までのデータをそのまま反映したいです。
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
転機するシート
|
62
|
+
|
63
|
+
Aさんの場合
|
64
|
+
|
65
|
+
|A列|B列|C列|
|
66
|
+
|
67
|
+
|:--|:--:|--:|
|
68
|
+
|
69
|
+
|Aさんのフィードバックシート|
|
70
|
+
|
71
|
+
|満足度|獲得数|コメント|
|
30
72
|
|
31
73
|
|8|9||||||
|
32
74
|
|
33
|
-
|10|11|親切な対応|10|10|話し上手||
|
34
|
-
|
35
|
-
|10|11||9|10|||
|
36
|
-
|
37
|
-
|||||||5|7|連絡が早い|
|
38
|
-
|
39
|
-
|||||||5|7||
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
②それぞれの担当者にデータを反映する。
|
46
|
-
|
47
|
-
※担当者のシートに転機するのは三行ずつです。
|
48
|
-
|
49
|
-
※コメントがない物もありますが、満足度と獲得数は必ず入力されています。
|
50
|
-
|
51
|
-
そのため、満足度が入っているセルからそれぞれコピーしたいです。
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
例.Aさんの場合はA4からC6までのデータをそのまま反映したいです。
|
56
|
-
|
57
|
-
Cさんの場合はG7からI8までのデータをそのまま反映したいです。
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
転機するシート
|
62
|
-
|
63
|
-
Aさんの場合
|
64
|
-
|
65
|
-
|A列|B列|C列|
|
66
|
-
|
67
|
-
|:--|:--:|--:|
|
68
|
-
|
69
|
-
|Aさんのフィードバックシート|
|
70
|
-
|
71
|
-
|満足度|獲得数|コメント|
|
72
|
-
|
73
|
-
|8|9||||||
|
74
|
-
|
75
75
|
|10|11|親切
|
76
76
|
|
77
77
|
|10|11|
|
1
作成したコードを貼り付けました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -78,6 +78,10 @@
|
|
78
78
|
|
79
79
|
|
80
80
|
|
81
|
+
上記のような形で、BさんもCさんの分もそれぞれ転機したいです。
|
82
|
+
|
83
|
+
|
84
|
+
|
81
85
|
①の作業まではなんとかできましたが、②が全く進みません。
|
82
86
|
|
83
87
|
セルの長さと横の長さを取得したり、offsetを使って見ましたが、うまく行きませんでした。
|
@@ -87,3 +91,119 @@
|
|
87
91
|
教えて頂けますと幸いでございます。
|
88
92
|
|
89
93
|
よろしくお願い致します。
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
作成したスクリプト
|
98
|
+
|
99
|
+
|
100
|
+
|
101
|
+
```
|
102
|
+
|
103
|
+
function CreateCommentsheet(){
|
104
|
+
|
105
|
+
Createsheet();
|
106
|
+
|
107
|
+
Copydata();
|
108
|
+
|
109
|
+
}
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
|
114
|
+
|
115
|
+
function Createsheet() {
|
116
|
+
|
117
|
+
var folderId = '格納先';//格納先
|
118
|
+
|
119
|
+
var spreadsheetId = '転機するシートのマスターのスプレッドシート';//マスターのシート取得
|
120
|
+
|
121
|
+
var folder = DriveApp.getFolderById(folderId);
|
122
|
+
|
123
|
+
var file = DriveApp.getFileById(spreadsheetId);
|
124
|
+
|
125
|
+
|
126
|
+
|
127
|
+
var ss = SpreadsheetApp.getActiveSpreadsheet();
|
128
|
+
|
129
|
+
var mySheet = ss.getSheetByName('シート1'); //スプレッドシートのシートを取得
|
130
|
+
|
131
|
+
var fileName = "営業担当のコメントシート"; //ファイル名変更
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
//新しく作成したシートのIDを取得してセルに貼り付けるコード等を書いていますが、
|
136
|
+
|
137
|
+
//長くなるため、削除しています。
|
138
|
+
|
139
|
+
}
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
function Copydata() {
|
144
|
+
|
145
|
+
var ss_copyFrom = SpreadsheetApp.getActiveSpreadsheet();
|
146
|
+
|
147
|
+
|
148
|
+
|
149
|
+
var sheet = ss_copyFrom.getSheetByName('シート1');
|
150
|
+
|
151
|
+
var strURL= sheet.getRange(1,15).getValue()
|
152
|
+
|
153
|
+
var ss_copyTo = SpreadsheetApp.openById(strURL);
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
// 書出シートの作成
|
158
|
+
|
159
|
+
var ss_sheet_temp = ss_copyTo.getSheetByName("マスターシート");
|
160
|
+
|
161
|
+
var lastColomn = ss_copyFrom.getLastColumn();
|
162
|
+
|
163
|
+
var lastRow = ss_copyFrom.getLastRow();//最終行を取得
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
for(var j=2;j<=lastColomn;j++){
|
170
|
+
|
171
|
+
var range = sheet.getRange(1,j);
|
172
|
+
|
173
|
+
var value = range.getDisplayValue();
|
174
|
+
|
175
|
+
if(value!= ""){
|
176
|
+
|
177
|
+
var SName = sheet.getRange(1,j).getValue(); //担当名
|
178
|
+
|
179
|
+
var AreaName = sheet.getRange(2,j).getValue(); //地域名
|
180
|
+
|
181
|
+
|
182
|
+
|
183
|
+
// データとファイル名の変更
|
184
|
+
|
185
|
+
var ss_sheet_copy = ss_sheet_temp.copyTo(ss_copyTo);
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
// 作成後のファイル名に使用する名前を決める。変えたい場合はここで変更
|
190
|
+
|
191
|
+
var name = SName + "_" + AreaName
|
192
|
+
|
193
|
+
var NewNameSheet = ss_sheet_copy.setName(name);//シートの名前を変更
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
// ★ここから②になりますデータ書き換え
|
200
|
+
|
201
|
+
|
202
|
+
|
203
|
+
}
|
204
|
+
|
205
|
+
}
|
206
|
+
|
207
|
+
|
208
|
+
|
209
|
+
```
|