• ベストアンサー
  • 困ってます

エクセルで時間入力10:30の:コロン省略したい。

始業と終業の時間を入力し勤務時間を計算しております。 始業時間はA1に8:30 終業時間はB1に17:00と入れております。 コロン(:)を省略できるととても楽になります。8:30は830と入力、17:00は1700と入力して 表示にはコロンが入り、セルの書式としては時刻と認識し時間計算が出来ればありがたいです。 よろしくお願い致します。

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数2961
  • ありがとう数12

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

  • ベストアンサー
  • 回答No.1
noname#198775
noname#198775

それが実現されると数値の3桁も4桁も全部コロンがついて入力されることになるのでものすごく不便。 セルの書式設定で特定のセル範囲にのみそれを適用するという方法もあるが、それだと入力した物は時間として見なされず計算に使えない。 Private Sub Worksheet_Change(ByVal Target As Range) を使って If Len(Target.Value) < 4 Then t = "0" & Target.Value Target.NumberFormatLocal = "h:mm;@" Target..Formula = Left(t, 2) & ":" & Right(t, 2) とする方法なら実用的。 「オートコレクト」を使って、コロンの代わりにピリオド二連打したらコロンと見なすとしたほうが簡単。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

mymame00 様 回答ありがとうございました。 オートコレクトは知りませんでした。とても簡単で助かります。

関連するQ&A

  • Excel 未入力欄の#VALUE!を消したい

    エクセル初心者です。 エクセルでタイムシートを作っていますが、 時間未入力の日の 残業時間 E1欄 に#VALUE!が出てしまいます。 非表示にするにはどうしたらいいでしょうか? 始業時間 A1 9:00 終業時間 B1 18:00 休憩時間 C1 1:00 勤務時間 D1 8:00 (終業時間 B1&#65293;始業時間 A1&#65293;休憩時間 C1) 残業時間 E1 1:00 (勤務時間 D1&#65293;所定勤務時間 AA1) 所定勤務時間 AA1 7:00(欄外)   (↑9:00&#65374;17:00が所定勤務時間として7:00を表の欄外に入力) 上記の場合、勤務時間 D1欄は =IF(AND(B1="",A1="",C1=""),"",SUM(B1-A1-C1)) で求めました。 次に残業時間 E1を =IF(AND(D1="",AA1=""),"",SUM(D1-AA1)) と入力したところ、始業時間や就業時間を入力すると 正しく計算されますが、 始業時間と就業時間を入力していない日は#VALUE!と表示されます。 未入力の日のE1セルにエラー表示させない為にはどうすればいいでしょうか? (ISERRORを試しましたが失敗しました。) (条件付き書式もイマイチわかりませんでした) Versionは2007です。 お手数ですが解答をお願いします。

  • Excel2010で時間を入力・計算する方法

    Excel 2010について、質問です。 会社で賃金台帳のデータ入力をしています。あらかじめ上司から渡された一覧表の内容を移す形で入力しているんですが、勤務時間等、時間の入力がうまくいきません。 例えば○月の勤務時間が144時間の場合、表には「144:00」と入力したいのですが、セルの書式設定で表示形式を「[h]:mm」とした場合、セルに「144:00」と入力すると「3456:00」になってしまいます。数式バーの表示は「1900/5/23 0:00:00」となっています。「表示形式⇒時刻⇒13:30」の場合はセルの表示は「0:00」で、数式バーは「1900/5/9 0:00:00」となります。 セルの表示形式を「0":"00」にした場合は、セルの表示は「144:00」になりますが、最後に勤務時間を合計すると、例えばA1に「1:30」、A2に「1:45」と入力した場合、A1+A2が「3:15」となるはずが、「2:75」となってしまいます。 セルの表示と、計算結果を正しく表示するにはどうしたら良いでしょうか。データ量が多いので、できればコロンを省略して入力したいです。 アドバイスをお願いします。

  • Excel IF関数の使い方

    ExcelでIF関数を使えばいいのは分かっているのですがどう使ったらいいのかが分かりません。 勤務表をExcelで作っていて、所定内勤務時間を計算したいです。 A列に休み区分、B列に始業時間、C列に終業時間、D列に所定内勤務時間が入っています。 A列に「半休」と文字が入った場合 始業時間8:30、終業時間12:00 と入力したら、自動的に所定内勤務時間を3:30 始業時間12:45、終業時間17:00 と入力したら、自動的に所定内勤務時間を4:15 A列に何も入らなかったら終日勤務で、所定内勤務時間を7:75と表示させたいです。 =IF(AND(A1=半休,B1=TIMEVALUE("8:30"),"3:30"),???) ここまでは分かるのですが???以降が分からないです。 どなたか教えていただけないでしょうか? よろしくお願いいたします。

その他の回答 (2)

  • 回答No.3
  • tom04
  • ベストアンサー率49% (2537/5117)

こんにちは! >時刻と認識し時間計算が出来ればありがたいです。 というコトですので、 VBAになってしまいますが、一例です。 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに ↓のコードをコピー&ペースト → Excel画面に戻りA・B列にデータを入力してみてください。 Private Sub Worksheet_Change(ByVal Target As Range) 'この行から If Intersect(Target, Range("A:B")) Is Nothing Or Target.Count > 1 Then Exit Sub With Target If .Value <> "" Then If IsNumeric(.Value) Then If .Value < 2400 And .Value Mod 100 < 60 Then Application.EnableEvents = False .Value = TimeSerial(Int(.Value / 100), .Value Mod 100, 0) .NumberFormatLocal = "h:mm" Application.EnableEvents = True Else MsgBox "入力値が不正です" .Select .ClearContents End If End If End If End With End Sub 'この行まで ※ とりあえず24時までとしています。m(_ _)m

共感・感謝の気持ちを伝えよう!

質問者からのお礼

tom04 様 何時も回答ありがとうございます。 今回は、回答者No,1番さんのオートコレクトが自分には簡単でした。

  • 回答No.2
  • MackyNo1
  • ベストアンサー率53% (1521/2850)

基本的に3桁または4桁で入力した数字を入力時に直接時刻として認識できる方法はありません。 表示だけ時刻形式にするなら、セルの書式設定で表示形式をユーザー定義にして「0!:00」とすれば見かけ上時刻のような形で入力することができます。 この場合は時刻として計算するには直接加減乗除するのではなく以下のような数式で加減乗除してください(加減乗除する場合は最後の「*1」は必要ありません)。 =TEXT(B2,"0!:00")*1 3~4桁で入力した数字を、まとめて時間のシリアル値に変換したいなら、Officeクリップボードを表示しておき、上記の設定で見かけ上時間表示の対象範囲をコピーし、そのままクリップボードのデータをクリックして上書き貼り付けし、セルの書式設定で時刻を選択してください。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

MackyNo1 様 回答ありがとうございました。 回答者No1番さんのオートコレクトを知りませんでした。 今回はこれを使ってみます。  

関連するQ&A

  • エクセルで時間の計算式を教えてください

    勤務時間の集計をしたいのですが A1に始業時間、B1に終業時間を入力し、C1に=A1-B1としました。 が、半休を取った場合の決まりがあります。 始業・終業時間に関わりなく「午前半休」は5時間、「午後半休」3時間の勤務時間となっています。 そこで、D1に「午前半休」または「午後半休」と記入して、表を作りVLOOKUPで3:00,5:00を抽出する事にしましたが、通常に勤務したときの時間を入れるのにどうしたら良いか分からないです。 午前半休、午後半休、通常勤務(残業の日もあります)どれがD1に入ってもC1に勤務時間が入る式はどうなるのでしょうか?

  • 勤務表の始業・終業時刻を30分単位に

    いろいろな始業・終業時刻に対応できる、30分単位で自動計算されるエクセル勤務表を作成しています。 例えばA1セルに定時開始時刻の「8:40」B1セルに定時終了時刻の「17:10」と記入し、そこを基準に毎日の始業時間を30分単位で丸めたいときにはどのようにすればよいのでしょうか? 定時は変更されることがあるので、A1とB1セルを変更してもそこを起点に30分単位で丸められるような勤務表を作りたいです。 A列に実際のタイムカード始業時刻 B列に実際のタイムカード終業時刻 C列に、A列の時刻をA1セルの時間を基準に30分単位で丸めたもの D列に、B列の時刻をB1セルの時間を基準に30分単位で丸めたもの 勤務時間、残業時間等は、D列とC列の時間を使って計算します。 FLOOR関数は0:00を基準とする丸め関数ですよね? いい方法がありましたら、よろしくお願いします。

  • EXCEL:時刻の集計

    お世話になります。 下記のように入力して、「始業時刻」と「終業時刻」を入力するとその日の「拘束時間」が計算されるようにしたとします。 セルA1(始業時刻) → 8:32(書式設定 『文字列』) セルA2(終業時刻) → 20:06(書式設定 『文字列』) セルA3(拘束時間) → =A2-A1(書式設定 『時刻』で、結果は 11:34) これが20日分入力され、トータルの「拘束時間(**時間**分)」を求めたい場合はどのようにしたらよいのでしょうか? 宜しくお願い致します。 使用環境 ・Windows Vista Home Premium SP2 ・Excel 2003 SP3

  • 【エクセルで時間計算について】

    会社で社員の1ケ月間の勤務時間表を作ることになりました。 セル-A1に1ケ月間の勤務時間【160時間】 セル-A2に実際に勤務した時間【160時間30分】 セル-A3に【1ケ月間の勤務時間】-【実際に勤務した時間】の差、 (この場合、差は【30分】です。) セル-A1には、【160】 セル-A2には、【160.30】 と入力しました。 結果、セル-A3には【0.3】となりますが、 私は【30分】と表示させたいのです。 「セルの書式設定」で「表示形式」を「時刻」にしたら いいのかな~といろいろやってみたのですが、どうも うまくできません。 どう設定すれば時間(時間・分)の表示になるのでしょうか? 何卒 ご教示ください。よろしくお願いいたします。 *うまく説明できなくてすみません*

  • 【エクセル】休息時間の計算

    休息時間の計算をしていて以下のようなものを計算したいのですが、 その最終目標の計算式に到達することができません。 参考に画像を添付いたします。ご教授ください。 -------------------------------------------- 表示したいのは「休息時間」の部分です。 1)前日の終業時刻、当日の始業時刻の両方が空欄の場合 →「休」と表示 2)前日の終業時刻が空欄で当日の始業時刻に値が入力されてる場合 →24時間+(当日0:00から当日始業時刻までの時間) の時間 3)当日の始業時刻が空欄で前日の終業時刻に値が入力されてる場合 →24時間+(前日終業時刻から当日0:00までの時間) の時間 4)前日の終業時刻、当日の始業時刻の両方とも値が入力されている場合 →(当日の始業時刻)&#65293;(前日の終業時刻)の時間 2)と3)をどうしたら良いかわからないので、 現在暫定的に2)か3)に該当する場合は「24時間以上」と表示するようにしており、 例えばセルE3には以下のような計算式を入れております。 =IF(AND($D2="",$C3=""),"休",IF(OR($D2="",$C3=""),"24時間以上",$C3-$D2)) 以上 宜しく御願い申し上げます。

  • Excelで:(コロン)を省略した入力と表示

    効率よく時間入力したく、:(コロン)を省略した入力方法を VBAの機能を使用して設定したのですが、 『0:30』を入力すると『:30』となってしまいます(0時台以外は問題なく表示)。 <コード内容は下記となります> ---------------------------------------------------------- Private Sub Worksheet_Change(ByVal Target As Range) Dim i As Integer, j As Integer Dim sTime As String Dim iTime As Integer On Error Resume Next For i = 3 To 52 For j = 6 To 7 sTime = CStr(CInt(Cells(i, j).Value)) Cells(i, j).Value = Left(sTime, Len(sTime) - 2) + ":" + Right(sTime, 2) Next j Next i End Sub ---------------------------------------------------------- <入力、表示の条件といたしましては...> ○ コロンを省略して入力(1100と入力→11:00と表示、030と入力→0:30と表示) ○ 24:00を過ぎた時間を25:00、26:00…と表示 ○ 入力後の値の認識は、可能であれば時刻、ダメなら文字列 どなたかExcel VBA詳しい方、教えて頂ければ幸いです。

  • Excelでの時刻入力

    初めて質問を投稿します。 私は仕事でよくExcelを使うのですが、 Excelで時刻入力する際、通常は”15:00”というように入力しますが、 時刻の入力数が多過ぎて、毎回わざわざ”:(コロン)”を入れるのに手間がかかってます。 ”1500”と入力するだけで時刻を入力できる方法ってあるんでしょうか? その入力した時刻データを使って、別セルに関数で計算をさせてるんですが、 シリアル値で入ってないと当然計算ができないので困ってます。 セルの書式設定とかでどうにかできたりするんでしょうか? いい方法をご存知の方、どなたか教えて頂ければ嬉しいです。

  • EXCELの時間計算

    セルA1に、「9:43:20」と時刻が入力されています。 セルB1に、「3.2」と時間(分)が入力されています。 セルC3には、A1の時刻から,B1の時間が経過した後の時刻を 表示させたいです。 ※B1の「3.2」を3.2分(3分12秒)として計算したいです。 C3の計算式を教えてください。 ※計算した結果の時刻は,9:46:32です

  • 時間の合計計算ができません。

    給料計算の表なんですが、  A1  B1      C1     D1     E1      F1 日付 始業時刻 終業時刻 勤務時間 休憩時間 実働時間 と項目をつくりました。 終業時刻ー始業時刻=勤務時間とし、休憩時間は1時間と決まっているので、日付を入れた時点で自動入力されるように=IF(A1<>"","1:00","")といれました。すべてうまくいったと思ったんですが、E1のタテの合計が空白になってしまいます。 どう解消したらいいでしょうか? いい方法をご教授ください。お願いします。

  • Excelで、15分単位での時給計算が正しく表示できない

    お世話になります。 15分単位での時給計算を行いたいのですが、15分きっかりの時だけ 下記計算式で出てくる数値が0.25にならず、0.00になってしまいます。 例) 時給千円で、17:00から18:15まで業務したとして、 A1に開始時間、B1に終了時間、C1に勤務時間、 D1に15分単位の値を表示させます。 C1はB1-A1(セルの書式は時刻に設定)、 D1の計算式は =FLOOR(C1,"00:15:00")/"1:00" にしています。 上記勤務時間の場合、D1に1.25と出てほしいのですが 1.00になってしまいます。 15分きっかりの場合でも、0.25と表示させる計算式あるいは 設定をお教えいただけたらと思います。