[[20151013174904]] 『日時が入っている文字列から、時間だけ取り出すに』(Quel) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『日時が入っている文字列から、時間だけ取り出すには?』(Quel)

A列に、「10月1日(木)9:00〜9:30」という文字列があり、そこからB列に開始時間(9:00)、C列に終了時間(9:30)が自動的に入る関数を組みたいです。

ただ、A列には「10月10日(土)10:00〜11:00」というように、文字列数が変わってしまう日時も入ってしまいます。MID関数だけではうまくいきません。よい方法はございますでしょうか?

< 使用 Excel:Excel2007、使用 OS:Windows7 >


 関数が苦手なので長ったらしい式です・・・。

 A1=10月1日(木)9:00〜9:30
 B1=LEFT(RIGHT(A1,LEN(A1)-FIND(")",A1,1)),FIND("〜",RIGHT(A1,LEN(A1)-FIND(")",A1,1)),1)-1)
 C1=RIGHT(RIGHT(A1,LEN(A1)-FIND(")",A1,1)),FIND("〜",RIGHT(A1,LEN(A1)-FIND(")",A1,1)),1)-1)
(カリーニン) 2015/10/13(火) 18:40

 B1 =SUBSTITUTE(MID(A1,FIND(")",A1)+1,5),"〜","")*1

 C1 =SUBSTITUTE(RIGHT(A1,5),"〜","")*1
 または
 C1 =REPLACE(A1,1,FIND("〜",A1),"")*1

 表示形式「時刻」

 こんな感じ?
(笑) 2015/10/13(火) 18:44

 C1は↓でもいけました。

 =RIGHT(A1,LEN(A1)-FIND("〜",A1,1))
(カリーニン) 2015/10/13(火) 18:48

できました!お二方、ありがとうございました!
LEN関数とSUBSTITUTE関数、勉強になりました。
(Quel) 2015/10/13(火) 19:19

 LOOKUP関数を使用してみました

 B1=LOOKUP(1,RIGHT(LEFT(A1,FIND("〜",A1)-1),{4,5})*1)
 または
 =LOOKUP(1,MID(A1,FIND(")",A1)+1,{4,5})*1)

 C1=LOOKUP(1,RIGHT(A1,{4,5})*1)
(AAA) 2015/10/13(火) 19:27

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.