- ベストアンサー
エクセル
エクセルでドロップリストを使っていてお知恵をお借りしたいことがあります。 ドロップりリストで選択した内容に応じてそれ以外の部分の自動で変更されるようにしたいです。 例えばA〜Dさんがいて、Aさんを選んだら、 役職、所属部署の欄が埋まるようにしたいです。 部署の変更ができるようにしたいので、条件付き書式は使用したくないです。 また、自動で埋めたい箇所が複数ブロックに分かれているのですが、Aさんを選ぶだけで全てのブロックが埋まるようすることは可能ですか? 不格好でいいので、マクロ等は使用せずにやりたいです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
回答の画像を作成するのに別シートとか面倒なので近場で作ったものですので一覧はどこにおいても自由です。 一覧のデータは変更したくなくて参照した文字の一部を変更したいのでしたら たとえば添付画像のように所属Aを所属Bに変更することがある場合 B7に元の参照先のデータを表示して(これもどこにあっても自由です) 添付画像では B7に =VLOOKUP($B$1,$D$2:$F$5,3,FALSE) B4に =IF(D7="",B7,LEFT(B7,2)&D7&RIGHT(B7,2)) B4を以下のようにすればB7は不要ですがやたら長くなるのでB7利用にしてます。 =IF(D7="",VLOOKUP($B$1,$D$2:$F$5,3,FALSE),LEFT(VLOOKUP($B$1,$D$2:$F$5,3,FALSE),2)&D7&RIGHT(VLOOKUP($B$1,$D$2:$F$5,3,FALSE),2)) それで D7に何も入力していなければ Aは所属Aです と表示されて D7に 所属Bと入力 すれば Aは所属Bです と表示されます。 あくまでも例ですので(そのような方法でいけるのかどうか不明なので) 前半2文字と後半2文字の間に変更する文字を入れるように 文字の位置とか文字数は決め打ちにしてます。 変更箇所をフリーに変更したいのでしたら必要なデータのある部分をコピーして別のシートに値貼り付けしてから変更して利用すれば関数は消えませんので何度でも利用できます。
その他の回答 (2)
- NuboChan
- ベストアンサー率47% (798/1671)
kkkkkmさん、横から失礼します。 >別シートに作成し、そのシートは非表示にする予定です。 セルの指定でシートを参照するようにしてドロップリスト用のシートを非表示するだけでは? 参照先のシートで参照セルをクリックすれば数式バーに指定した参照先が表示される。 例えば $B$1,$D$2 ーーー> Sheet2!$B$1,$D$2 >実際には20文字程度の文章のような項目があり、 役職を指定文字列に書き換えるだけでは? >関数が消えてしまう為、 関数が消えるの意味が理解できませんが 指定文字列に書き換えるだけは、関数が消えるはず無いのでは?
- kkkkkm
- ベストアンサー率66% (1741/2613)
添付画像は例の為に単純にしていますが、D,E,F列のような一覧をどこかに作ってください。 B1がドロップダウンリストでA,B,C,Dを選択するようになっています。 B2とB4はドロップダウンの結果によって自動で右の一覧から適切なもの参照して表示します。 B2に =VLOOKUP($B$1,$D$2:$F$5,2,FALSE) B4に =VLOOKUP($B$1,$D$2:$F$5,3,FALSE) としています。
お礼
ありがとうございます! その関数なら上手く行きそうです! ただ欲を言うなら ドロップリスト用の表は別シートに作成し、そのシートは非表示にする予定です。 例では役職等を用いましたが、実際には20文字程度の文章のような項目があり、その一部を書き換える可能性があるのです。 ご回答いただいた方法では関数が消えてしまう為、一部修正は不可能ですよね? 例えば、「Aさんは役職AからBに変更になりました。」 の名前や役職の部分のみの変更です。 この程度であればその項目のみ関数を消して全部打ち直してもいいし(作業者による若干の表記揺れの可能性があってやや気持ち悪いですが)、""&""を組み合わせてもできそうだとは思ったんですが、もっと楽な方法があればよろしくお願いします。
お礼
ありがとうございます! 解決できそうです