質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

解決済

2回答

1149閲覧

gasで複数の時刻の最小値を求める際に、空のセルを除外して時刻表示したいが、返り値に0がかえってくる

ratera

総合スコア54

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

0クリップ

投稿2020/03/27 00:32

編集2020/03/27 07:56

イメージ説明

gasで複数の日付の最小値を求める際に、空のセルを除外して、最小となる時刻を表示したいです

その際、文字列なのでMINを利用すると比較に失敗するのですが、良い方法はありませんでしょうか?

【追記】
MINIFS(D3:F3,D3:F3,"?*")で試した結果は以下のように表示はかわりませんでした。
イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

D列F列が文字列の場合、=MINIFS(D3:F3,D3:F3,"?*")でダメでしょうか?

(support.google.com)MINIFS 一連の条件でフィルタされたセル範囲内の最小値を返します。

投稿2020/03/27 07:37

編集2020/03/27 07:41
Y.H.

総合スコア7918

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ratera

2020/03/27 07:55

ご回答とリファレンスありがとうございます。 文字列かつMINIFSでもうまくいきませんでした。 参考にですが、?*はどのような条件(範囲の中から絞り込み)を表現しているのでしょうか?
Y.H.

2020/03/27 08:03 編集

?:任意の一文字 *:任意のゼロ文字以上 組み合わせると任意の一文字以上となり、何か文字列が入っているという条件になります
ratera

2020/03/27 08:04

正規表現だったのですね。ありがとうございます!
Y.H.

2020/03/27 08:06

正規表現とは違い*と?しかありません。(ワイルドカードと呼ばれるものです)
Y.H.

2020/03/27 08:14

0が出てるのでmin/mnifs内で数値に変換されてるのかも "?*"を">0" にするとどうなりますか?
ratera

2020/03/27 12:40

">0"に変更しても出力結果はなぜか0のままでした。 文字列ではなく、12:00の数値型に対してMINを行った場合は、0.5(一日の半分は12時)となりました。
guest

0

自己解決

timevalue()で数値に変換することで解決しました。
ご相談に乗っていただきありがとうございます。
イメージ説明

function setCurrentTime(value) { if(value){ var now = new Date(); //現在日時を取得 var time = Utilities.formatDate(now,'Asia/Tokyo', 'yyyy/MM/dd HH:mm:ss');//取得した現在日時を指定した表示形式に変換 return time; } }

投稿2020/03/27 13:24

編集2020/03/27 13:27
ratera

総合スコア54

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問