ここから本文です

教えてください。 エクセルでの入力省略方法ですが、 「1」と入力したら「休」...

see********さん

2015/1/821:21:34

教えてください。

エクセルでの入力省略方法ですが、
「1」と入力したら「休」と表示し、
「2」と入力したら「出」と表示したいのです。

オートコレクトで設定した場合、エクセル全てに適用されてしまいます。
BOOK毎に設定したいですが、解りません。

どなたか解る方、知恵をお貸しください。

補足早速のご回答ありがとうございます。

説明不足でもうしわけありません。

「3」と入力したら「代」と表示し、
「4」と入力したら「欠」と表示したいです。

9個の条件でやりたいのですが、どなたか知恵をお貸しください。

閲覧数:
181
回答数:
2
お礼:
250枚

違反報告

ベストアンサーに選ばれた回答

him********さん

2015/1/1014:55:32

VBAになります。

>9個の条件
1,2,3,4まではご質問通り、残り5,6,7,8,9は仮にA~Eとしておきますので、任意の文字に変更してください。

>BOOK毎に設定したい・・・
ブック内全シートに適用させたいなら・・・

下記のマクロコードをThisWorkbookモジュールにコピペしてください。
■モジュールへのコピペ方法
①下記コード全体をコピー。
②ブックが開いてる状態で「Altキー」+「F11キー」を押してVBE画面を表示。
③画像の通り、「ThisWorkbook」右クリック→コードの表示
④右側の真っ白で空白なコードウインドウの場所にマクロコードを貼り付け。
(これも画像に見えるように)
⑤右上の「×」でVBE画面を閉じる。
⑥シート上で番号入力してみてください!

※該当ブック内ならどのシートでも有効です。
※各シートの変化させるセル、範囲等を特定したいなら、また言ってくださいね。

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
With Target
Select Case .Value
Case 1: .Value = "休"
Case 2: .Value = "出"
Case 3: .Value = "代"
Case 4: .Value = "欠"
Case 5: .Value = "A"
Case 6: .Value = "B"
Case 7: .Value = "C"
Case 8: .Value = "D"
Case 9: .Value = "E"
End Select
End With
Application.EnableEvents = True
End Sub

VBAになります。

>9個の条件...

  • him********さん

    2015/1/1015:07:10

    ちなみに・・・
    先に提示したコードでは、1や2の値のセルを2個以上コピーして、他に貼り付けた場合、一度に"休""出"とする仕様にしていませんのでエラーとなります。
    よって、編集するセル(番号入力するセル)は、毎々ひとつだけって限定するなら、以下のようにもできます。
    ’★部分だけ追加です。

    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    If Target.Count <> 1 Then Exit Sub '★
    Application.EnableEvents = False
    With Target
    Select Case .Value
    Case 1: .Value = "休"
    Case 2: .Value = "出"
    Case 3: .Value = "代"
    Case 4: .Value = "欠"
    Case 5: .Value = "A"
    Case 6: .Value = "B"
    Case 7: .Value = "C"
    Case 8: .Value = "D"
    Case 9: .Value = "E"
    End Select
    End With
    Application.EnableEvents = True
    End Sub

  • その他の返信(2件)を表示

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

質問した人からのコメント

2015/1/12 20:22:49

ありがとうございます。
問題解決しました。
丁寧な説明を付けて頂き、助かりました。

ベストアンサー以外の回答

1〜1件/1件中

kab********さん

2015/1/821:44:19

セルの書式設定の表示形式のユーザー定義で
[=1]"休";[=2]"出"
と設定してみてください。

ただし
1か2の入力と文字列の入力と空欄以外は正しく表示されません。

1の入力で「休」
2の入力で「出」と表示されますがセルの値は1か2です。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる