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

質問編集履歴

4

コードの修正、写真を追加しました。不足情報がありましたらお手数ですがご指摘下さい。よろしくお願い致します。

2020/04/12 01:45

投稿

kyomihei
kyomihei

スコア8

title CHANGED
File without changes
body CHANGED
@@ -25,6 +25,7 @@
25
25
  key = new RegExp(key,"ig");
26
26
  Logger.log(key.test(ngArray));
27
27
  }
28
+ ```
28
29
 
29
30
  'NGリスト'(ngArray)
30
31
  ![イメージ説明](51b9031c9e35c9c9ccd717fb03efa452.png)

3

コードの修正、写真を追加しました。不足情報がありましたらお手数ですがご指摘下さい。よろしくお願い致します。

2020/04/12 01:45

投稿

kyomihei
kyomihei

スコア8

title CHANGED
File without changes
body CHANGED
@@ -5,15 +5,35 @@
5
5
 
6
6
  ```Google Apps Script
7
7
 
8
+ function ngCheck() {
9
+ //アクティブシートの最終行抽出
10
+ var ssa = SpreadsheetApp.openById('xxxxxxx'); //コピー元のマスターデータのあるスプレッドシート
8
- var array = [mac book pro, mac pro, windows, surface]
11
+ var sh = SpreadsheetApp.getActiveSheet();
9
- var key = book //ループで違う値が入るようになります
12
+ var getVal = sh.getRange('A:A').getValues();
10
- key = new RegExp(key,"ig");
13
+ var lastRow = getVal.filter(String).length;
11
- Logger.log(key.test(array));
12
14
 
13
- ```
15
+ //NGリストの最終行抽出
16
+ var nglstss = ssa.getSheetByName('NGリスト');
17
+ var nglst = nglstss.getRange('A:A').getValues();
18
+ var nglastRow = nglst.filter(String).length;
14
19
 
20
+ //NGリストを配列に↓
21
+ var ngData = nglstss.getRange(1, 1, nglastRow).getValues();
22
+ var ngArray = Array.prototype.concat.apply([], ngData);
23
+
24
+ var key = sh.getRange(4, 25).getValues();
15
- 上記のように部分一致した場合、trueを返したいのですが上手くいきません。
25
+ key = new RegExp(key,"ig");
26
+ Logger.log(key.test(ngArray));
27
+ }
16
28
 
29
+ 'NGリスト'(ngArray)
30
+ ![イメージ説明](51b9031c9e35c9c9ccd717fb03efa452.png)
31
+
32
+ アクティブシート(key)
33
+ ![イメージ説明](219f5dec22137099e5ba83fee782172a.png)
34
+
35
+ アクティブシート(key)が"test"ならtrueが返るのですが、"test sample"のように、部分一致の場合、falseが返ってしまいます。
36
+
17
37
  特殊文字を入れるのかなとも思うのですが、書き方がどうしてもわかりません。
18
38
 
19
39
  もし前提から違っていたら申し訳ありません。

2

2020/04/12 01:44

投稿

kyomihei
kyomihei

スコア8

title CHANGED
File without changes
body CHANGED
@@ -14,7 +14,7 @@
14
14
 
15
15
  上記のように部分一致した場合、trueを返したいのですが上手くいきません。
16
16
 
17
- 特殊文を入れるのかなとも思うのですが、書き方がどうしてもわかりません。
17
+ 特殊文を入れるのかなとも思うのですが、書き方がどうしてもわかりません。
18
18
 
19
19
  もし前提から違っていたら申し訳ありません。
20
20
  どうぞご教示よろしくお願い致します。

1

2020/04/12 00:09

投稿

kyomihei
kyomihei

スコア8

title CHANGED
File without changes
body CHANGED
@@ -6,7 +6,7 @@
6
6
  ```Google Apps Script
7
7
 
8
8
  var array = [mac book pro, mac pro, windows, surface]
9
- var key = book //ループで不特定の違う値が入るようになります
9
+ var key = book //ループで違う値が入るようになります
10
10
  key = new RegExp(key,"ig");
11
11
  Logger.log(key.test(array));
12
12