プロが教えるわが家の防犯対策術!

EXCEL初心者です。
EXCEL2010を使っています。

A列に時間が入力されている時に、関数を使ってB列に時間帯を表示させる方法がありますか?

たとえば、A列に
A1 13時
A2 10時
A3 18時


とあり、
時間帯を10時~12時、12時~14時、14時~16時、16時~と区切る場合、
B列に
B1 12時~14時
B2 10時~12時
B3 16時~


と表示させたいです。

時間帯別に集計する関数は色々載っていますが、単純に時間帯を表示させる方法がうまくヒットしません。

置換でやろうかと考えましたが、膨大なデータなので、関数で一気に出来ればと思います。

関数はあまり詳しくなく、困っています。
ご教授いただければ幸いです。
どうぞよろしくお願いします。

A 回答 (4件)

A1 13:00


B1 =int(a1/"2:00")*2&"時~"&(int(a1/"2:00")+1)*2&"時"

と入力。さらに、A1 セルを右クリック、「セルの書式設定>表示形式タブ>表示形式タブ>ユーザー定義>種類ボックス」に「h"時"」と入力。
「EXCELの関数を使い時間帯を表示させた」の回答画像4
    • good
    • 0
この回答へのお礼

ご回答いただきありがとうございました。無事、表示させる事ができました。

お礼日時:2013/07/06 00:14

添付図参照


列Aのセルは“ユーザー定義”で
G/標準"時"
の書式に設定しておき、各セルに数値を入力した後で
セル B1 に次式を入力して、此れを下方にズズーッとドラッグ&ペースト
B1: =VLOOKUP(A1,D$1:E$5,2)&""
「EXCELの関数を使い時間帯を表示させた」の回答画像3
    • good
    • 0
この回答へのお礼

ご回答いただきありがとございました。
とても参考になりました。
感謝!感謝!です。

お礼日時:2013/07/06 00:17

B1セルには次の式を入力して下方にドラッグコピーします。



=IF(A1="","",FLOOR(LEFT(A1,LEN(A1)-1),2)&"時~"&FLOOR(LEFT(A1,LEN(A1)-1),2)+2&"時")
    • good
    • 1
この回答へのお礼

ご回答いただきありがとうございました。
次回の参考にさせていただきます。

お礼日時:2013/07/06 00:18

A列がどんな形式で時間が入っているか判りませんが、



文字列なら、

=IF(VALUE(LEFT(A1,LEN(A1)-1))>=18,"18時~",IF(VALUE(LEFT(A1,LEN(A1)-1))=16,"16時~18時",IF(VALUE(LEFT(A1,LEN(A1)-1))>=14,"14時~16時",IF(VALUE(LEFT(A1,LEN(A1)-1))>=12,"12時~14時",IF(VALUE(LEFT(A1,LEN(A1)-1))>=10,"10時~14時","~10時")))))

時間形式なら、

=IF((A1-INT(A1))>=1/24*18,"18時~",IF((A1-INT(A1))>=1/24*16,"16時~18時",IF((A1-INT(A1))>=1/24*14,"14時~16時",IF((A1-INT(A1))>=1/24*12,"12時~14時",IF((A1-INT(A1))>=1/24*10,"10時~14時","~10時")))))
    • good
    • 0
この回答へのお礼

ご回答いただきありがとうございました。
次回の参考にさせていただきます。

お礼日時:2013/07/06 00:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!