質問編集履歴

1

コードの挿入

2018/09/05 02:12

投稿

pee.cyon.cyon
pee.cyon.cyon

スコア12

test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,79 @@
1
- GASで領収書を自動作成する方法を、こちら↓↓↓のサイトを参考に作ってみたので
1
+ GASで領収書を自動作成する方法を、こちら↓↓↓のサイトを参考に作っていま
2
2
 
3
- http://www.atmarkit.co.jp/ait/articles/1802/05/news003.html
3
+ http://www.atmarkit.co.jp/ait/articles/1802/05/news003.html
4
4
 
5
+
6
+
7
+ ◆ひな型を元に、GASで自動作成したスプレッドシートは作成できるのですが
8
+
9
+ 中身を開くと、うまくデータが転記されておりません。
10
+
11
+
12
+
13
+ ◆私が私用したコードはこちらになります。
14
+
15
+ ↓↓↓
16
+
17
+ function createReceipt() {
18
+
19
+ var template = SpreadsheetApp.openById('領収書ひな型スプレッドシートID');
20
+
21
+ var sheet1 = SpreadsheetApp.getActiveSheet();
22
+
23
+
24
+
25
+
26
+
27
+ for(var i = 2; i <= 4; i++) {
28
+
29
+
30
+
31
+ //データの作成
32
+
33
+ var name = sheet1.getRange(i, 2).getValue(); //姓名
34
+
35
+ var description = sheet1.getRange(i, 4).getValue() ; //駅
36
+
37
+ var amount = sheet1.getRange(i, 6).getValue(); //金額
38
+
39
+
40
+
41
+ //ひな型をコピー
42
+
43
+ var ssName = '領収書(' + name + ')';
44
+
45
+ var sheet = template.copy(ssName).getSheetByName('領収書');
46
+
47
+
48
+
49
+ //データを転記
50
+
51
+ sheet.getRange('A4').setValue(name);
52
+
53
+ sheet.getRange('A6').setValue(description);
54
+
55
+ sheet.getRange('A7').setValue(amount);
56
+
57
+ }
58
+
59
+ }
60
+
61
+
62
+
63
+ ◆エラーメッセージ
64
+
65
+ ⇒ TypeError: null のメソッド「getRange」を呼び出せません。(行 18、ファイル「コード」)
66
+
67
+
68
+
69
+ ◆試してみたことは、3行目の
70
+
71
+ var sheet1 = SpreadsheetApp.getActiveSheet(); を
72
+
73
+ var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("シート名(=フォームの回答)");にして
74
+
75
+ シート名を特定させましたが、うまく転記することができませんでした。
76
+
77
+
78
+
5
- データをうく転記ることできずにいます。ご教示いただくことはできますでしょうか。
79
+ ご多忙の折恐れ入りますが、おわかりの方がらっしゃいしたら、ご教示いただくことはできますでしょうか。