例えば、社員の名前をある列に入れないといけないとき
入力規制とかで、社員の名前の記述されたデータ列を指定すると、リストボックスで選択できる様になりますよね。
しかし、社員数が100人位いて多い場合、選択するのも結構大変になります。
そこで、読みのはじめの人文字を入れたてからリストボックスを開くと、該当データ辺りにカーソルが来ていて、入力しやすくできるといった方法はないものでしょうか。
やり方はリストボックス形式にこだわりません。入力しやすければいいです。
入力する社員名は決まっていて、新規の入力はできなくても良いです。ただし、社員が増えた時は、リストに追加して入力できるようにしたいです。
No.1
- 回答日時:
列を1列増やすことになりますが、社員一人一人に「コード番号」のようなものをつけ、入力時は数値で入力するようにしたらどうでしょうか。
慣れてくると下手なマウス操作より数値入力のほうが圧倒的に早いです。
数値を入力するセルの隣に、INDEX関数とかVLOOKUP関数などを使って、氏名を表示するようにもできます。
早速ありがとうございます。
入力元のデータ表に、名前しか無い場合、
「山田太郎さんは528番、田中一郎さんは423番・・・」
という風に変換表を見ながら入力しないといけないですね。50人くらいで全員の番号を覚えられれば早いんですが..。
No.2
- 回答日時:
名前を入力するセルの一つ前に、名前の読み仮名の頭一文字を入力するセルを作って、その列にオートフィルタをかけてやるというのはどうでしょうか?頭一文字の読みをリストから選択すれば、100人ぐらいの人数だったら多くとも4、5人くらいには絞れると思いますので、かなり入力しやすくなるとは思いますが。
No.4
- 回答日時:
EXCELに対して設定をかけると、別のシートを持ってきたときには使えませんよね。
社員全員を辞書登録してしまうのが一番簡単で、どんなソフトのときも使えます。
読みを2文字位にすれば、1~2秒で入力できるようになります。
No.5
- 回答日時:
私なら、IME、すなわち、かな漢字変換ソフトで単語登録してしまいますね。
たとえば、「よしだ」の読みで
吉田茂
吉田恭子
芳田元之助
などと名前を登録した社員名入力専用のユーザー辞書を作ります。姓を入力すれば、あとは選択するだけです。
ユーザー辞書はCSVなどのテキストファイルから一括登録できますし、もちろん追加修正も容易です。Excelのsheetが変わってもすぐ使えますし、ワープロやその他のソフトでも同様に使えます。さらに、省入力・推測変換機能を使えば、入力はもっと楽になります。
No.7ベストアンサー
- 回答日時:
(1)エクセルにはあるセルに小島 完と入力して同列下のセルで小島と入力すると小島 完が出てくる機能がある。
これを使えないか考えたが、うまく行かない。(2)VLOOKUP関数で候補を引けないか考えたが
同姓があると(全員苗字名前とも違わないと)うまく行かない。
(3)H1:H10に名前が
小島 完
小島 三平
小島 三平
小島 順
小嶋 洋平
川村 次郎
朝霞 清
朝霞 源次
朝霞 次郎
兵庫 建次
兵庫 太郎
とあり、そのまま(漢字で)ソートする。そしてG1に関数=LEFT(H1,1)を入れ、G10まで複写する。
E1に名前先頭漢字1文字入力する。
F1に関数=OFFSET($H$1,MATCH($E$1,$G$1:$G$10,0)+ROW()-2,0)と入れ、同じ漢字で始まる最大人数分の行数を
複写する。この例では「小X XX」が5人いるのでF5行まで複写する。
これでE1に「小」と入れると、F1:F5は
小島 完
小島 三平
小島 三平
小島 順
小嶋 洋平
となるから、この中から選べば良い。
しかし選んだF1:F5のうちのセルから、目的のセルへのコピーが難しくてで来そうにもない。(手操作で、毎回コピーするならそれはそれで良いが、手数がかかると感じるでしょう)。そこでVBAで
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static c As Integer
If Target.Column = 6 Then
Cells(c + 1, "c").Value = Target.Value
c = c + 1
End If
End Sub
をVBEのSheet1のSelectionChangeイベントに貼りつけました。
これでE1セルに名前第1字入力--->F1:F5に候補セット--->F1:F5のどれかを選択してクリック
--->C列にC1から上から順に選択した名前をセットする。
(4)本来は質問の意図を実現するには、VBAで2段検索をして、即ち名前の第1文字で表を検索し、リストボックスかコンボボックスに候補の名前を表示し、その中から
クリックして選んだものをセルにセットするプログラムを
組まないといけないと思います。
関数だけだと限界があります。
お礼が遅くなり大変申し訳ございません。
時間が無くまだ試していないのですが
詳細なプログラムまで教えていただきありがとうございました。是非参考にします。
No.8
- 回答日時:
INDIRECT関数でリストを切り替える方法とかーー
例えば社員の名前の読み方に応じてあ行、か行、さ行に振り分けリストを作成し、それぞれのリストに「あ」「か」「さ」と名前をつけてやります。A1にあ~わを入力するとし、B1の入力規則の「リスト」で
=INDIRECT(A1)
と設定してやります。すると例えば「鈴木」さんだとA1に「さ」と入力してやると(またはA1にも入力規則を設定してやり)、さ行の名前のみがB1のリストボックスに出てきます。(逆に面倒かもーーー)
所属部署を入力する場合は所属部署ごとにリストを振り分けるのもいいですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ゼロを表示
-
Excelの計算が合いません。 諸...
-
今まで文字化けなく開けていたc...
-
Excelの警告について
-
ExcelでASCを使って全角を半角...
-
スプレッドシートで指定された...
-
作成した数式を値として表示し...
-
EXCELの散布図で日付が1900年に...
-
Excel関数について教えてくださ...
-
Excel関数について教えてくださ...
-
マクロの処理が遅くなった
-
エクセルを使用して、円周率を...
-
エクセルでファイルの最終更新...
-
エクセルのセル内に分数などの...
-
条件付き書式設定で罫線を引き...
-
シートの情報を別のシートへま...
-
【マクロ】フォルダ内にあるPDF...
-
エクセルで曜日を入れたい
-
Microsoft 365Excelの見開きペ...
-
Excelで時間の計算の方法 7時45...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの警告について
-
Excelで数値を時間数に変換する...
-
エクセルの数式バーのフォント...
-
エクセルで数字の組み合わせを...
-
エクセルを使用して、円周率を...
-
Excelで特定の文字列が含まれて...
-
Excel 対象のセルに入力が無い...
-
任意の値が存在する行に名前を...
-
エクセルでファイルの最終更新...
-
index関数の説明をお願いします。
-
条件付き書式でやりたいのですが
-
重複しない値を取り出したい
-
【ExcelVBA】UTF-8(BOM無)でC...
-
【マクロ】マクロが割当てされ...
-
エクセル IF計算式?でしょうか?
-
エクセルで曜日を入れたい
-
表中の指定した条件の文字列を...
-
【Excel】版が同じ事を示す番号...
-
EXCELの散布図で日付が1900年に...
-
Excelについて。Excelに縦1列に...
おすすめ情報