0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Slack ワークフローからGoogle Sheetsに行追加したらタイムスタンプが文字列になった

Posted at

こんにちは。

Slackのワークフローとgoogleのスプレッドシート(お前Sheetsっていうんか)で課題管理システム作っていて、困ったことがあったので、その事象と回避策をメモがてら残す。

やりたかったこと

  • slackWFでフォームを記入
  • 記入した内容をスプレッドシートに追加
  • そのタイムスタンプを使って色々
    • botによる投稿への返信
    • シート上で課題の追加時間と終了時間から対応にかかった時間を出す。

etc….

メッセージのタイムスタンプをシートに書き込もうとしたら文字列になった。

タイトル通り。

スプシのセルに日付を書き込み、セルをクリックすると画像のようにカレンダーが出てきて日付を選択できる。

image.png

これはスプレッドシートの中で日付型として扱われていると認識している。

ところがワークフローから追加をすると

image.png

image.png

画像だとわからないが、文字列として扱われている。というかスプシはこの形式をサポートしてない。これだとgasで列の内容を取得したときに日付として扱ってくれない。(今思えばgasで日付に変換しても良かったな)

セルの表示形式を変更してもうんともすんとも言わないので困った。

ワークフローから追記するときに 数式を指定した

date型の日付を表示する列とは別に、unixタイムスタンプを記入する用の列を作成。

image.png

Slackのワークフローから列追加するステップの内容は以下の通りにする

image.png

追加する数式は以下。INDEXの引数は任意の列にしてください。

=DATE(1970,1,1) + INDEX(D:D, ROW())/86400

image.png

見事日付に。

Slackのワークフローの入力欄って普通のテキストも入力できるんだね。今まで変数代入してたから気が付かなかった。

感想

まさかこんなところで躓くとは。といった感じ。(ほんと2日ぐらい試行錯誤してた)

WFとスプシの連携は非エンジニアにも優しいかと思いきや思わぬ落とし穴だなと思った。こ~~~れなんとかしてくれませんかねslackさん。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?