質問編集履歴

2

コードの追加、画像の追加

2022/03/07 07:05

投稿

sys
sys

スコア1

test CHANGED
File without changes
test CHANGED
@@ -6,6 +6,69 @@
6
6
  のいづれで取得してもtureの値がすべてfalseで入ってきます。
7
7
 
8
8
  テスト的に
9
- 直接セルにたいしてtureと文字入力をしたものはそのまま期待した文字列(ture)が取得できてはいます。
9
+ 直接セルにたいしてTRUEと文字入力をしたものはそのまま期待した文字列(TRUE)が取得できてはいます。
10
10
 
11
11
  正確に情報を取得するにはどのような手段がありますか??
12
+
13
+ すみません、コードと画像を追記します。(D列usernameとI列に入ってくる文字列判定をしております)
14
+ ![D列usernameとI列に入ってくる文字列判定をしております](https://ddjkaamml8q8x.cloudfront.net/questions/2022-03-07/e6dea1c4-822f-4a8b-b7d1-ed15fea57aaa.png)
15
+ ```ここに言語を入力
16
+ // 最終行取得
17
+ var lr = slack_sheet.getLastRow();
18
+ // 初期化
19
+ //if (lr > 2) sh.getRange(2,1,lr-2,sh.getLastColumn()).clear();
20
+ if (lr > 2) slack_sheet.getRange(2,1,lr-2,5).clear();
21
+ // 出てきそうな項目名を予め列挙しておく(この辺は必要に応じて加減すればよいでしょう)
22
+ var item = [
23
+ "user",
24
+ "text",
25
+ "type",
26
+ "username",
27
+ "ts"
28
+ ];
29
+ // 2次元配列化
30
+ var ary = [];
31
+ var ary2 = [];
32
+ for (var i=0; i<data.messages.matches.length; i++) {
33
+ for (var j=0; j<item.length; j++) {
34
+ ary.push(data.messages.matches[i][item[j]]);
35
+ // もしundefinedなら空欄に直す
36
+ if (!ary[j]) {
37
+ ary[j] = "";
38
+ }
39
+ }
40
+ //配列の中身を一行ごとにした
41
+ ary2.push(ary);
42
+ ary = [];
43
+ }
44
+ //console.log(ary2);
45
+ // スプレッドシートに転記
46
+ //日付
47
+ log_sheet.getRange(1,1).setValue(Utilities.formatDate(date, 'Asia/Tokyo', 'yyyyMMdd'));
48
+ //取得した配列を転記(useridから)
49
+ slack_sheet.getRange(2,1,ary2.length,item.length).setValues(ary2);
50
+
51
+ **SpreadsheetApp.flush();
52
+ //リザルトシートの結果を格納
53
+ //var result_vals = result_sheet.getDataRange().getValues();
54
+ var result_vals = result_sheet.getDataRange().getDisplayValues().slice(1);
55
+ console.log(result_vals);
56
+ //console.log(result_vals[2][0]);
57
+ //console.log(result_vals[2][1]);
58
+ Logger.log(Object.prototype.toString.call(result_vals[2][0]));
59
+ Logger.log(Object.prototype.toString.call(result_vals[2][1]));**
60
+
61
+
62
+ var good_member = '';
63
+ var bad_member = '';
64
+ for (var i=0; i<result_vals.length; i++) {
65
+ //ユーザー名が空じゃなくて二カラム目がfalseならgoodmember
66
+ if (result_vals[i][0] !== '' && result_vals[i][1] == 'FALSE') {
67
+ bad_member = bad_member + result_vals[i][0] + ", ";
68
+ } else if (result_vals[i][0] !== '' && result_vals[i][1] == 'TRUE') {
69
+ good_member = good_member + result_vals[i][0] + ", ";
70
+ }
71
+
72
+ }
73
+ コード
74
+ ```

1

を を追加

2022/03/07 02:32

投稿

sys
sys

スコア1

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  シートにてexact関数で文字列判定しtrue,falseを表示しています。
3
- その表示結果gasで
3
+ その表示結果gasで
4
4
  ・getDataRange().getDisplayValues()
5
5
  ・getDataRange().getValues()
6
6
  のいづれで取得してもtureの値がすべてfalseで入ってきます。