質問編集履歴
2
コードの修正をいたしました。(//追加箇所というところになります)
test
CHANGED
File without changes
|
test
CHANGED
@@ -68,6 +68,25 @@
|
|
68
68
|
range.setDataValidation(rule);
|
69
69
|
}
|
70
70
|
}
|
71
|
+
//追加箇所
|
72
|
+
function getRule(category1Value, settingData, column) {
|
73
|
+
// カテゴリ1に対応するカテゴリ2を入れておくところ
|
74
|
+
let catgory2List = [];
|
75
|
+
|
76
|
+
// 設定シート のデータの中から、「選択されたカテゴリ1」に対応するカテゴリ2を取り出すところ
|
77
|
+
settingData.forEach(row => {
|
78
|
+
if (row[0] === category1Value) {
|
79
|
+
catgory2List.push(row[column]);
|
80
|
+
}
|
81
|
+
});
|
82
|
+
if (catgory2List.length === 0) return;
|
83
|
+
|
84
|
+
// 編集されたセルの右以降のセルにカテゴリ2のデータを貼り付ける
|
85
|
+
const rule = SpreadsheetApp.newDataValidation().requireValueInList(catgory2List, true);
|
86
|
+
rule.editsheet.appendRow(catgory2List);
|
87
|
+
return rule;
|
88
|
+
}
|
89
|
+
//追加箇所
|
71
90
|
|
72
91
|
function getRule(category1Value, settingData, column) {
|
73
92
|
// カテゴリ1に対応するカテゴリ2を入れておくところ
|
@@ -79,7 +98,9 @@
|
|
79
98
|
catgory2List.push(row[column]);
|
80
99
|
}
|
81
100
|
});
|
101
|
+
if (catgory2List.length === 0) return;
|
82
102
|
|
103
|
+
// 編集されたセルの右以降のセルにカテゴリ2のプルダウンをセットする
|
83
104
|
const rule = SpreadsheetApp.newDataValidation().requireValueInList(catgory2List, true);
|
84
105
|
rule.setAllowInvalid(false).build();
|
85
106
|
return rule;
|
@@ -104,9 +125,12 @@
|
|
104
125
|
|
105
126
|
### 試したこと
|
106
127
|
|
107
|
-
プルダウンをセットする前に、貼り付けするコードを入れてみましたが
|
128
|
+
~~プルダウンをセットする前に、貼り付けするコードを入れてみましたが
|
108
|
-
エラーが出てしまい、こちらに再度ご質問させていただきました。
|
129
|
+
エラーが出てしまい、こちらに再度ご質問させていただきました。~~
|
109
130
|
|
131
|
+
追加箇所に二次元配列のデータを貼り付けるコードを入れてみましたが
|
132
|
+
上手く作動しません。
|
133
|
+
入力してもデータ貼り付けなし、プルダウン作成もしなくなりました。
|
110
134
|
|
111
135
|
|
112
136
|
お手数ですが、ご尽力いただければ幸いです。
|
1
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
GASを使用した条件分岐によるデータ貼り付けとプルダウン作成
|
1
|
+
GASを使用した条件分岐によるデータ貼り付けしたあとプルダウン作成を追加したい
|
test
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
### 実現したいこと
|
7
7
|
|
8
|
-
・スプレッドシート上で既に設定したプルダウンを選択、その内容を基に**別シートの対照表
|
8
|
+
・スプレッドシート上で既に設定したプルダウンを選択、その内容を基に**別シートの対照表の最初に該当するデータを貼り付け**
|
9
9
|
・貼り付けたセルにプルダウンを作成
|
10
10
|
・作成されたプルダウンの内容は別シートの対照表を参照
|
11
11
|
・貼り付ける/プルダウンを作成される列は6列(B列で項目選択、C~H列にプルダウン作成)
|