• 締切済み

EXCELの文字入力について

タイムカードによる給与計算をしています。人数が多くて時刻を入力するのに『:』を打つのが面倒です。 1435と入力すれば14:35と自動的に『:』が入る方法があれば教えてください。

みんなの回答

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

こんばんは! 数値を入力したセルそのものが時刻表示になるのがご希望ですよね? VBAになってしまいますが、一例です。 とりあえずA列に数値を入力するとしています。 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に ↓のコードをコピー&ペーストして、A列に数値を入力してみてください。 Private Sub Worksheet_Change(ByVal Target As Range) 'この行から Dim str1, str2 As String If Intersect(Target, Columns(1)) Is Nothing Or Not IsNumeric(Target) _ Or Selection.Count <> 1 Then Exit Sub str1 = Int(Target / 100) str2 = Target Mod 100 If Target > 2401 Or str2 > 59 Then MsgBox "入力値が不正です。" Target.Select Selection.ClearContents Exit Sub Else Application.EnableEvents = False With Target .Value = str1 & ":" & str2 .NumberFormatLocal = "hh:mm" End With Application.EnableEvents = True End If End Sub 'この行まで ※ 他の列(仮にB列)であれば上記コード内の >Intersect(Target, Columns(1)) の Columns(1) を > Columns(2) のように変更してみてください。 ※ シリアル値で表示するようにしていますので、給与計算にそのまま利用できると思います。 参考になりますかね?m(_ _)m

すると、全ての回答が全文表示されます。
  • kichi8000
  • ベストアンサー率41% (660/1584)
回答No.5

A1のユーザー書式設定で(表示のみで入力数値はそのまま) 00!:00 作業セルとして、B1でシリアル値に変換(計算時にはこのセルを参照) =TIMEVALUE(TEXT(A1,"0!:00"))

すると、全ての回答が全文表示されます。
  • Cupper-2
  • ベストアンサー率29% (1342/4565)
回答No.4

どうしても 1435 と入力したいのであれば セルの書式設定で 00:00 とでも設定しておき 計算側で処理をしましょう。  TIMEVALUE(TEXT(A1,"00:00")) とでもして時間に直した後計算。 …凄く煩雑になるのでお勧めはしません。 たぶん時間計算の式が一目で判断できないくらい複雑に見えちゃいますよ。 (ってことは間違いがあっても気がつかない可能性があるので…お勧めしないんです)

すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

お示しの数値を入力してそれを時間表示のようにするのでしたらそれらのセルを選択したのちに右クリックして「セルの書式設定」から「表示形式」の「ユーザー定義」で種類の窓には 00!:00 と入力してOKします。 これは何なる時刻もどきの表示であって計算にはそのままの形では使うことができません。 仮にA1セルの表示をそのようにして時刻の形で使うのでしたらB1セルに次の式を入力してセルの表示形式を時刻から選びます。 =TIME(LEFT(A1,2),RIGHT(A1,2),0)

すると、全ての回答が全文表示されます。
  • chonami
  • ベストアンサー率43% (448/1036)
回答No.2

私もお勧めしません。 オートコレクトで「..」を「:」に変換できるようにしておくと楽です。

すると、全ての回答が全文表示されます。
  • Cupper-2
  • ベストアンサー率29% (1342/4565)
回答No.1

自分はその方法はお勧めしない。 自分なら   14..35 と入力して、あとから「置換」を使い 「..」を「:」に変換する。 そのほうがシートに無駄な情報(マクロや関数)を加えずに済むんだな。 なお、この回答は見栄えをよくするため全角文字で入力していますが、 実際には半角文字で入力しましょう。 (テンキーでの入力が楽ですよ)

すると、全ての回答が全文表示されます。

関連するQ&A