• ベストアンサー

エクセルで1つのセルに2つの時刻表示

A1セルに8時00分~17時30分というように表示させたい場合、ユーザー定義でh""時"mm"分""~"h"mm"分"として、セルに、8:00.17:30と入力すると8時00分~8時00分と表示されます。どこで間違っていますか?winXPエクセル2003です。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.4

入力用と表示用で別のセルにしたらどうでしょうか A1に表記のように入力されているとき 別のセルで =TEXT(TIMEVALUE(LEFT(A1,FIND(".",A1)-1)),"h時mm分")&"~"&TEXT(TIMEVALUE(MID(A1,FIND(".",A1)+1,5)),"h時mm分") とするとか

summer45
質問者

お礼

文字列にすると出来ました。ありがとうございます。

summer45
質問者

補足

入力してみましたが、表示は8時00分になりました。やはりできないのでしょうか。

その他の回答 (7)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.8

エクセルのセルには1つの値しか入力できません。文字列なら2つの値と判る語句当を入力できますが、数字ではできません。日付シリアル値・時刻値でも1つの値で、8時00分と17時30分のつの値を表せません。 そして表示形式は、数値(エクセルの通常の日付・時刻も数値)を対象にするもので、かつセルの1つの値を対象にするものです。ですからhh:mmも1セルの表示形式で2度書くと(ymdmは)同じ先出の時刻値を2度繰り返してしまいます。 数字なら1225と入れて##~##の書式設定で12~25のように見せられますが、この手も使えません。 エクセルの想定外のニーズです。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.7

こんにちは。 >表示は8時00分になりました。やはりできないのでしょうか。 #4さんの式は、A1 が、書式が文字列になっているのが条件はずです。 表示形式ではできませんね。時間入力は、時間型の入力は、シリアル値に自動変換されてしまいます。Excelは、Wordなどと違ってセル単位で表現するので、#3さんのおっしゃるように、二つのセルに入れて、片方に、「~h時mm分」と表示形式を作ればよいかと思いました。 元のご質問の意図は、大量にあるから簡単に入力できないのかということかしら? Excelに慣れてくると、もう少し何とかならないのかなっていって安易な方法ほ求めて質問を出す人がいますが、それを追求していくと、度が過ぎることがありますので、あまり、それは考えないほうがよいです。それよりは、自分の入力を速めたほうがよいです。 私は、回答がマクロが中心なので、一応マクロで考えてみました。 注意: 予め入力するセルの領域は、文字列にしていなければ、変換できません。 'シートモジュール '----------------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) '文字列書式 8:00.17:30 の様式を、8時間00分~17時間30分に直す、 'イベント・ドリブン型プロシージャ   Dim abuf As Variant   Dim bbuf As Variant   Dim a As String   Dim b As String   '1がA列, 2がB列...   If Target.Column <> 1 Then Exit Sub   Application.EnableEvents = False   For Each c In Target.Cells    If VarType(c.Value) = vbString Then      If InStr(c.Text, ".") = 0 Or InStr(c.Text, ":") = 0 Then Exit Sub      Ar = Split(c.Text, ".")      On Error GoTo ErrHandler      If UBound(Ar) = 1 Then       abuf = Split(Ar(0), ":")       a = Format$(TimeSerial(CInt(abuf(0)), CInt(abuf(1)), 0), "h時間mm分")       bbuf = Split(Ar(1), ":")       b = Format$(TimeSerial(CInt(bbuf(0)), CInt(bbuf(1)), 0), "h時間mm分")       If Not IsError(a & b) And a <> "" Then         c.Value = a & "~" & b       End If      End If    End If   Next ErrHandler:   Application.EnableEvents = True End Sub

summer45
質問者

お礼

文字列になってませんでした。やっとでできました。ありがとうございます。二つのセルに入力すれば簡単なんですが、どうしても、作成上、できなかったので悩んでいました。助かりました。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.6

#4>入力してみましたが、表示は8時00分になりました エラーになることはあっても、"8時00分"になることはないんじゃないかと("~"がなくなることがない)と思うので なにか勘違いされていると思います。 私の勘違いだったらすみません。

noname#63726
noname#63726
回答No.5

1つのセルに8時00分~17時30分と入力しなければならない理由は何故でしょうか? ただ単に、時間表示として~を使いたいだけであって見た目だけなら、先に回答された方の意見である別々のセルに入力する方法が一番だと思います。 8時00分 ~ 17時30分 を3つのセルに入力して外枠以外の縦罫線を付けなければ良いと思います。 またメニューバーのツールのオプションで枠線の表示のチェックを外します。上記の方法を実行してみて印刷プレビューや印刷をすれば1つのセルに入力したように見た目は見えます。 この方法が時間も文字列ではなく時間(数値)として判断できます。

回答No.3

できないと思います。 > どこで間違っていますか? あえて書くなら、 「1つのセルに2つの時刻表示」をせずに、 別セルに分けたほうがいいと、思います。

回答No.2

 エクセルのセルは、一つの値しか持てません。  8:00と17:30の二つの値を、一つのセルで持たせるのは元々無理なんです。  どうしても表示したい場合は、セルの書式設定をユーザー定義にし 00":"00"~"00":"00 このように設定します。 さらにセルに、  08001730 と打ち込めば、  08:00~17:30 このように表示させることはできます。

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

> 8:00.17:30と入力する この入力で、二つの時刻値を表す事ができるというのは初耳ですが、 うまくいかないようなら、二つのセルにそれぞれ別の時刻値を入力し、表示させたいセルの中で、文字列として連結する計算式を記述するようにしてみては。

関連するQ&A

  • 質問:エクセルで1つのセルに2つの時刻表示(再)

    以前に質問し回答も頂いたのですが、数字を変えた場合の数式が分かりません。どなたか教えて下さい。 以前の質問は【A1セルに8時00分~17時30分というように表示させたい場合、ユーザー定義でh""時"mm"分""~"h"mm"分"として、セルに、8:00.17:30と入力すると8時00分~8時00分と表示されます。どこで間違っていますか?winXPエクセル2003です。】で、回答は【=TEXT(TIMEVALUE(LEFT(A1,FIND(".",A1)-1)),"h時mm分")&"~"&TEXT(TIMEVALUE(MID(A1,FIND(".",A1)+1,5)),"h時mm分")】でした。そこでG1に8:00.18:00とした場合、数式はどうなりますか?全くできませんでしたので、どなたか教えて下さい。

  • エクセルで05'30"と表示したい

    エクセル2007を利用してますが、セルに例えば0530と入力したら05'30"と表示されるようにしたいのですが可能でしょうか?セルの書式設定のユーザー定義でmm'ss"としたのですが上手くできませんでした。それとA1セル 03'00" A2セル 05'40"と入力されている場合にB2セルにA2-A1の分秒を引いた数字 02'40" を表示させたいのですがどのように入力すればよいでしょうか? 以上宜しくお願いいたします。

  • エクセルの時刻入力

    こんにちは。 エクセル2003を使っています。時刻入力をする際例えば1300と入力したら13:00となるようにするには どうしたらいいのでしょうか。ユーザー定義でh:mmにして入力しても0:00と表示され 上の長細いfxとあるバーのところには1903/7/23 0:00:00と入っています。 どう設定すれば私のやりたいことができるでしょうか。 アドバイスよろしくお願いいたします。

  • セルの時刻表示について

    こんばんは、よろしくお願いします。 エクセルで、時刻の引き算をし、うまくセルに結果を表示できません。具体的には、 A1のセルに1:40、B1のセルに1:50、C1のセルにはB1-A1という計算式をいれて、10と表示させたいのですが、どうしても0:10などと表示されてしまいます。このような場合、どうすればいいのでしょうか?セルのユーザー設定をいじってみましたがうまくいきませんのでよろしくお願いします。 なお、エクセルのバージョンは最新のものです。

  • Excel 時間の表示形式 セルと数式バーの表示を同じにしたい。

    Excel2007です 時間の表示形式について教えてください。 150時間50分を150:50と入力するとセルには150:50と表示されますが 数式バーには、1900/1/6 6:50:00と表示されます。 数式バーにも150:50と表示させる方法を教えてください。 ちなみに 表示形式は、ユーザー定義で[h]:mmとなっています。

  • エクセルの表示形式

    Excel2002を使っています。セルA1に日付が入っています。 もし「H○○.△△.××」(H17.04.01)と表示させたい時について質問します。 セルの書式設定でユーザー定義から「ge.mm.dd」とするのと「gee.mm.dd」とするのとでは表示が変わらなかったのですが、どちらが正解でしょうか? また意味が違ってきますか? 教えてください。

  • EXCELで表示形式について。。。

    EXCELで表示形式でユーザー定義を使用した時に、 その値で検索したいのですが、どうしたらよいのでしょうか? Aの列に表示形式をユーザー定義で"A-"##にしました。 セルには数字のみ入力しました。見えているのはA-20とかA-15とかです。 その値でVLOOKUPの関数で検索したいのですが、できますか? ユーザー定義ではA~Zを使用してます。 セルには10~55までの数字を入力して、表になってます。 シートをコピーして形式を選択して貼り付けしてもセルに入力した数字のみで、 ユーザー定義で表示している"A-"の部分はコピーできません。 もう一度、入力しなおしたくはないので、お願いします。

  • 時刻計算

    1)時刻を2つ入力してかかった時間を計算したい 2つのセルに時刻を 【例】16:00 17:00 のように入力してB1-A1としたら1:00と出てきたのですが、 24時をまたいでしまうと、この方法が使えません。 2)かかった時間を”分”で表示したい セルの書式設定、ユーザー定義で h*60+m"分" としてみましたが、「入力した表示形式が正しくありません」 と出てしまいます。 何か方法はないでしょうか?

  • エクセル2000 セルの表示設定

    エクセル2000 セルの表示設定で同一のセルで、日にちと曜日を表示させる事は出来ますか? 表示形式で日付を選ぶと和暦、西暦で日にちを表示できますが、曜日まで表示できません。ユーザー定義を設定して同一のセルで日にちと曜日を表示させる方法を教えていただけますか、お願いします。 また、出来ない場合セルのA1に日にちを入力してセルのB1に曜日を表示させる関数を教えてください。 よろしくお願いします。

  • Excelにおけるセルの表示方法

    Excelでセルに0.012と入力して0円1銭2厘と表示する方法を教えてください。セルの書式設定のユーザー定義を使ってなんとかできる思いましたが、うまくいきません。

専門家に質問してみよう