[[20150716153223]] 『人の名前、頭の1文字を入力したら候補がでてくる』(はやさく) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『人の名前、頭の1文字を入力したら候補がでてくるような関数・機能』(はやさく)

過去質問も確認したのですが、それらしいものが見当たらず、質問させていただきます。

塾の事務をしています。受講生から、勉強以外の質問があった際の応対履歴を作成する予定です。

現在200名程の受講生がいるのですが、別のシートに氏名とふりがなの一覧を作っておくとして、
それとは別のシートのセルに頭の1文字(たとえば斉藤さんからの質問に応対した際は「さ」)を入力したら、

「斉藤・佐藤・桜井」など同じ頭文字の受講生の氏名が候補としてでてきて選択することができるような
関数や機能がありましたらご教示いただきたくお願いいたします。

私の乏しい頭では、リストを作ってプルダウンで選択させることくらいしか浮かばず、それだと200人の中から
1人選ぶことになるので面倒なうえに選択間違いも増えそうだな・・・と思い、質問させていただいております。

よろしくお願いいたします。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


 仮にそういう関数があったとして、それは、やはり リストが出てきて、その中から選ぶのでは?

 それは面倒だといわれるわけですから、そうではない、動きを要望というか、想定しているんですよね?
 具体的には、たとえば さ と入力したら どこに どうなることを想定していますか?

 それとも、プルダウンはプルダウンでOK,ただし、絞り込まれたリストにしたいということですか?

(β) 2015/07/16(木) 16:01


言葉足らず・表現が悪くて大変申し訳ございません。

 >それとも、プルダウンはプルダウンでOK,ただし、絞り込まれたリストにしたいということですか?

そのとおりです。
頭文字ごとの絞り込まれたリストを作って、A1に「あ」と入力したら「相川・相澤・赤井…」と「あ」から始まる氏名のリストが出現するか、
A1に「あ」と入力して、なんらかのアクションをもう1つ加えることでB1に「相川・相澤・赤井…」と「あ」から始まる氏名のリストが出現するようなことができたら、と思い質問させていただきました。

(はやさく) 2015/07/16(木) 16:10


 前準備が大変だが。

 まず、名前一覧用のシートを用意しておいて1行目に横へ「あ」「い」「う」…と頭文字の一覧を作っておき、
 「あ」のセルの名前を「あ」、「い」のセルの名前を「い」…と設定する。
 そしてその一行目の頭文字全体の名前を「五十音」とする。

 頭文字の下に受講生の名前リストを作っておく。

 そして選択したいセルがA1だとして入力規則の「リスト」で「元の値」に
 =IF(COUNTIF(五十音,A1),OFFSET(INDIRECT(A1),1,,COUNTA(OFFSET(INDIRECT(A1),,,100))-1),五十音)
 と設定すると一回目のプルダウンで「あ」「い」「う」…の選択を行い(手で入力してもかまわない)、その状態で
 プルダウンするとその頭文字の受講生一覧となる。
(ねむねむ) 2015/07/16(木) 16:28

 A1セルで五十音を選択、B1セルで受講生名を選択であれば、A1セルの元の値を「=五十音」、B1セルの元の値を
 =OFFSET(INDIRECT(A1),1,,COUNTA(OFFSET(INDIRECT(A1),,,100))-1)
 としてくれ。

 A1セルはドロップダウンにせず頭文字を手入力させるのでも構わない。

 あと、前回の式も今回の式も一つの頭文字の受講生リストは最大100行目までだとしている。
 もっと人数の多い頭文字がある場合は「OFFSET(INDIRECT(A1),,,100)」の「100」部分を大きくしてくれ。
(ねむねむ) 2015/07/16(木) 16:33

ねむねむさん!

ありがとうございます!!

今、教えていただいたとおりにためしに何人分かだけ作成して(A1で完結するやり方で)みました!

凄く助かりました。

本当にありがとうございます。

(はやさく) 2015/07/16(木) 16:37


解決済みですが。

 ねむねむさんのと似た方法ですが、どのシートでもいいので たとえば 1行目に あ、い、う、・・・ と入力。
 2行目以降に、あ の列なら 相沢とか相川とか、会田とか、い の列なら伊藤とか、井上とか。

 で、最終的にできあがった表の1行目も含めて、その一番多く登録されている列の最後行までの矩形領域を選択して
 「名前の作成」。上端行をチェックして登録。

 入力シートの あ や い をいれるセルが A1 だとして、B1に入力規則。
 リスト を選択して もとの値を =INDIRECT($A$1)

 入力規則登録時にエラーメッセージが出ても気にせず登録してください。

(β) 2015/07/16(木) 16:40


(β)さん!

ありがとうございます!!
(β)さんのやりかたでも今ためしてみました!

周りの方に相談して、どちらかで作成してみます!

私と同じ素人集団なので、どちらでもいいよ〜と言われてしまいそうですが。。

凄く勉強になりました。誠にありがとうございます。
(はやさく) 2015/07/16(木) 16:45


 私の方法は後々の受講生の追加を考えてそれぞれの列に追加があった場合に追加した受講生も出てくるようにしている。

 βさんの方法で追加を考慮する場合は
 >で、最終的にできあがった表の1行目も含めて、その一番多く登録されている列の最後行までの矩形領域を選択して
 部分で追加予定分多く行を指定しておくこと。

(ねむねむ) 2015/07/16(木) 16:51


ねむねむさん、フォローいただきありがとうございます!

受講生はこれからも追加されていく予定なので、留意しておきます!!

(はやさく) 2015/07/16(木) 16:57


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.