2016-08-30 6 views
-2

MATCH関数を使用して、00:00の形式の時刻を含む列のセルを検索しようとしています。 MATCH("??:??",A:A)MATCH("?*:?*",A:A)と同様のものを試してみました。 2桁、コロン、2桁の正規表現を作成するにはどうすればよいですか?時間形式の正規表現

+1

正規表現を使用したことがありますか?どのような正規表現を試してみましたか? – Kyle

+1

セルに保存されている時間は、時間またはテキストとしてフォーマットされていますか?それが時刻としてフォーマットされている場合、実際の値はあなたが探している小数です。また、excelの 'match()'関数は引数として正規表現をとらないので、正規表現は実際にここに行く方法ではありません。 – JNevill

+0

hh:mmのカスタム形式として格納されます。 'match()'を使い、最初の引数として "ZZZ"が単語が見つかった場合に真を返す方法と同様に、最初の引数にhh:mm形式を使用する方法はありませんか? – KOB

答えて

0

多くの場合、私たちに表示されるものは実際の値ではありません。時間と日付はそのような時間です。通常、時間をexcel 3:55に入力すると、自動的にExcelの時刻形式(10進数:0.163194444444444)に変換されますが、入力したとおりに自動的に「mm:ss」にフォーマットされます。

ワイルドカードを使用して=MATCH()にしようとすると、セルの値が実際にその10進数なのでヒットしません。

代わりに、検索するセルの値をテキスト形式に変換する必要があります。これは=TEXT()の式で行うことができます。あなたのデータを仮定すると、あなたがB1に置くことができA1に開始されます。

=Text(A1, "mm:ss") 

さて、式から返された値がまだmm:ss形式のように見えますが、それは今のテキストです。基礎となる値は実際には3:55です。面白いビジネスはありません。あなたは今、このカラムから"*:*"のあなたのワイルドカード検索をベースにすることができます

=Match("*:*", B1:B10, 0) 

あなたがすべて1つの式でこれを実行したい場合は、配列数式(またはCSE)を使用することができます。

=Match("*:*", Text(A1:A10,"mm:ss"),0) 

数式を入力するときにCtrl + Shift + Enter(入力ではなく)を使用します。