• 締切済み

Excel プルダウン 補足説明付きの場合 その2

(実現したい事1) ← 既に解決済 例えば、Excel プルダウンで、↓ にマウスを当てると以下のように表示され、  1 確認完了  2 確認中  3 未着手  4  非該当 選択後は、1から4の数字だけがセルに格納され、補足説明部の 確認完了、確認中、未着手、非該当 などはセルに格納されないようにしたい。 (ご回答頂いた解決方法) G1に1、G2に2、‥‥のように数字だけを入力します。 ↓ セルG1の書式設定で、表示形式を「G/標準 確認完了」のようにユーザー設定します。 セルG2以降も同様に、"G/標準+スペース+表示したい文字列" の様式で表示形式を設定します。 ↓ G列が "1 確認完了"、"2 確認中"、‥‥ のように表示されます。 ↓ この範囲を、リスト(入力規則)の元の値として指定します。 (実現したい事2) ← 今回、困っている事。 例えば、Excel プルダウンで、↓ にマウスを当てると以下のように表示され、  A 東京都  B 大阪府  C 北海道  D 沖縄県 選択後は、AからDの文字だけがセルに格納され、補足説明部の 東京都、大阪府、北海道、沖縄県 などはセルに格納されないようにしたい。(前回は数字であったが今回は文字) (チャレンジした内容) 数字の場合と同様に、 G1にA、G2にB、‥‥のように文字だけを入力します。 ↓ セルG1の書式設定で、表示形式を「@ 東京都」のようにユーザー設定します。 セルG2以降も同様に、"@+スペース+表示したい文字列" の様式で表示形式を設定します。 ↓ G列が "1 東京都"、"2 大阪府"、‥‥ のように表示されます。 ↓ この範囲を、リスト(入力規則)の元の値として指定します。 このようにやってみたのですが、プルダウンのリスト表示では、  A 東京都  B 大阪府  C 北海道  D 沖縄県 とはならずに、  A  B  C  D のような補足説明が付加されないようなリストとなってしまいます。 一方で、例えば G1 は「A 東京都」と表示され、G1を修正しようとして G1 セルをダブルクリックすると、「A」のみが表示されるので 「セルの書式設定」-「ユーザー定義」は正しく設定されています。 なぜ、プルダウンのリスト表示だけ補足説明部が付加されないのか、理由がわからず悩んでいます。 この原因と解決案をアドバイスを頂けたら幸いです。 なお、環境は Windows 10 + Office2016 です。 以上、よろしくお願いいたします。

みんなの回答

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.15

> 私は、従来と同じ見え方を実現するためには、C1、C2、C3 ………… の各行全てにコンボボックスを作成する必要があると思っていたのですが、この理解合っているでしょうか? はい。コピーして一部設定を変更すればいいですね。 > ご回答の「列ではありません。C1の所にあるコンボボックスをクリックすると」の部分ですが、C1にコンボボックスを作ったので、「列」という言い方は正確ではない、という用語の問題、に捉えたのですがよろしいでしょうか? はい。C1に重ねて作る話でC列にマウスを当てると言われても??です。やりたいこと(仕様)の説明なのできちんとしないと、たとえば上部の見出しでCの所をクリックするのもC列にマウスを当てると考えらえます。 そして、マウスを当てるだけでは、選択肢は表示されません。

kmsakutomo
質問者

お礼

ここ数日、別件で忙しくなり、コンボボックスで綺麗に疑似セルを作るチャレンジがまだできていません。申し訳ありません。 今回の件はマクロ(Excel VBA)が使えそうな環境のようなので、コンボボックスのチャレンジは、後日時間ができた時にやってみたいと考えます。いろいろと詳細に教えて頂いた事を深く感謝いたします。ありがとうございました。

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.14

できなければ、コンボボックスの件で新しく質問をしてみればいかがでしょう。質問には画像を付けることができます。

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.13

> コンボボックスに詳しそうなので 別に詳しくはありません。 >  (1) 何も値を入力しない場合は、他の列のセルと同じように見える。 はい >  (2) C列にマウスを当てると、選択肢が表示され、1つを選択すると値が > 入り選択肢の表示が消える。(今回の例では A~D のどれかが入る) 列ではありません。 C1の所にあるコンボボックスをクリックすると↓が表示され、↓をクリックして選択する。 >  (3) コンボボックスの設定によっては(プルダウンではなく)C列に直接 A > ~ D の値を入れる事ができる。 はい 画像はコンボボックスに直接「A」を入力している状態から、そこをクリック(↓が表示される)、その後↓をクリックしてDを選択して再度↓をクリックした状態です。

kmsakutomo
質問者

補足

私のコンボボックスに関する知識不足のため、何度も質問させて頂いて、かつご多忙中にもかかわらず、お付き合い頂いて本当に申し訳ありません。 VBA 無しに従来のデータの入力規制のプルダウンと同じ操作で実現できるのか? というのが私の最大の関心事なのです。 従来の入力規制のプルダウン方式では、例えば C1にマウス→そこで選択肢表示、C2にマウス表示→そこで選択肢表示、C3にマウス表示→そこで選択肢表示 …………………となっているので、 私は、従来と同じ見え方を実現するためには、C1、C2、C3 ………… の各行全てにコンボボックスを作成する必要があると思っていたのですが、この理解合っているでしょうか? ご回答の「列ではありません。C1の所にあるコンボボックスをクリックすると」の部分ですが、C1にコンボボックスを作ったので、「列」という言い方は正確ではない、という用語の問題、に捉えたのですがよろしいでしょうか? 以上、よろしくお願いいたします。 (頂いたご回答内容) ---- ここから ---- >  (2) C列にマウスを当てると、選択肢が表示され、1つを選択すると値が > 入り選択肢の表示が消える。(今回の例では A~D のどれかが入る) 列ではありません。 C1の所にあるコンボボックスをクリックすると↓が表示され、↓をクリックして選択する。 ---- ここまで ----

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.12

今作業をしているブックではなく、新規にブックを作成してやってみてもいいかもしれません。

kmsakutomo
質問者

補足

>今作業をしているブックではなく、新規にブックを作成してやってみてもいいかもしれません。 わかりました。やってみます。 ところで、kkkkkm 様はコンボボックスに詳しそうなので教えて欲しいのですが、仮に今回の作業がうまくいった場合、コンボボックスのプルダウンを使った方式は、従来のデータの入力規制のプルダウンと、見た目は同じように実現できるのでしょうか? 具体的には、C列をコンボボックスで疑似1セル化した列とすると、  (1) 何も値を入力しない場合は、他の列のセルと同じように見える。  (2) C列にマウスを当てると、選択肢が表示され、1つを選択すると値が入り選択肢の表示が消える。(今回の例では A~D のどれかが入る)  (3) コンボボックスの設定によっては(プルダウンではなく)C列に直接 A ~ D の値を入れる事ができる。 上記の (1) や (2) に関しては、既にご教示頂いたように「ボタンをアクティブ時だけ表示する設定」や「ボタンの形状の変更」等で実現できるような印象を持ちましたが、(3) の直接データ入力は可能なのでしょうか? 以上、よろしくお願いいたします。

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.11

> (3)「開発」-「デザインモード」を選択し、D1セルを右クリックし、設定画面を表示させる。 > (4) 何も設定変更せずに設定画面を閉じ、「開発」から「ホーム」タグに変更した ホームタブに移動する前にデザインモードをオフにしていないのかと思いましたが、その場合だと↓が出ないのでそうでもないようですね。何もしないのに選択肢が出ないとなると、ちょっと原因はわかりません。 なお、お礼や補足には画像は付けられないと思います。

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.10

> コンボボックスで、少しでも変更すると表示がでなくなるのは仕様なのでしょうか?  そんなことは無いと思います。 ↓を押しても出ないのだとするとRowSourceの所が消えてしまったか別の所に変わったかが考えられます。 枠は出るけど値が出ないのであればColumnCountが0になっているかColumnWidthsが0 pt;0 ptになっているかが考えられます。 どちらにしても、通常は出なくなる事は無いと思いますから、変更したはずのないものが既定値と変わっていないか、先に回答したプロパティの説明ページと比べて確認するか、新しく再度作り直すかだと思います。 > >BorderStyle を fmBorderStyleNone に設定 >  → 最初からこの設定になっていました。 私がコンボボックスの表示を変更してたときに変わったのを既定値に戻してなかったのでそこも変更だと勘違いしてました。 立体表示に違和感があれば SpecialEffect を fmSpecialEffectFlat に変更してください。

kmsakutomo
質問者

補足

ご教示頂いた方法をチャレンジ中ですが、設定変更する前でハマっています。以下のような状況です。 (1)とりあえず、コンボボックスをD1 付近に作成する。 (2)最初は選択肢が表示されていた。 (3)「開発」-「デザインモード」を選択し、D1セルを右クリックし、設定画面を表示させる。 (4) 何も設定変更せずに設定画面を閉じ、「開発」から「ホーム」タグに変更した後、↓ をクリックしても選択肢 が表示されなくなった。 この状態のPC画像を作ったのですが、ここに貼り付ける方法が私にはわからないので、わかりにくい文書になってすみません。 以上、よろしくお願いいたします。

回答No.9

事前に、 リストの[エラーメッセジ]のチェックを外しておく か、 前回のマクロ記述の Application.EnableEvents = False の前に If Target.Validation.Type <> xlValidateList Then  Target.Validation.ShowError = False End If の3行を挿入する か、してみてください。

kmsakutomo
質問者

お礼

コメントありがとうございました。 >リストの[エラーメッセジ]のチェックを外しておく で動作しました。簡単な事でしたね。 お手数をおかけしてすみませんでした。

  • SI299792
  • ベストアンサー率47% (788/1647)
回答No.8

これは、①と②のどちらかという意味です。 マクロを入れたのなら、関数は必要ありません。 マクロを使えない場合(時々、マクロ禁止の会社がある) ①のようなやり方をするしかないという意味で書きました。 解りにくい書き方でした。

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.7

> コンボボックスの「疑似1セル」には常に↓が表示されていて(従来のデータの入力規制によるプルダウン方式だと、セルにマウスを置いた時に↓が表示される)、従来と見た目が変わってしまう。 以下の設定にしてみてください。 ボタンをアクティブ時だけ表示 ShowDropButtonWhen を fmShowDropButtonWhenFocus に設定 外枠を非表示 BorderStyle を fmBorderStyleNone に設定 にすると従来と同じになると思います。 こちらにプロパティの説明があります。 (シート上のコンボボックスでは一部ないものもあったと思います) Excel VBA コンボボックスのプロパティ https://kosapi.com/post-3556/

kmsakutomo
質問者

補足

コメントありがとうございました。 やってみました。 >外枠を非表示 >BorderStyle を fmBorderStyleNone に設定  → 最初からこの設定になっていました。 >ボタンをアクティブ時だけ表示 >ShowDropButtonWhen を >fmShowDropButtonWhenFocus に設定 この変更をすると、↓ の表示は無くなるのですが、  A 東京都  B 大阪府    : という表示もできなくなりました。 この変更とは別に、上記表示ができている状態でコンボボックスの表示の大きさをマウスで(←→ 等で)変更しても上記表示は出力されなくなってしまいます。 コンボボックスで、少しでも変更すると表示がでなくなるのは仕様なのでしょうか? それとも当方でのコンボボックスの作り方がマズイのでしょうか? コンボボックスは私には難易度が高そうですね。 いろいろとすみません。よろしくお願いいたします。  

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.6

No.5で書き忘れてました。 > (5) マウスカーソルをC1の状態で、「データ」-「データの入力規制」をやっても「データの入力規制(v)」がグレイアウトし選択できず、プルダウンリストが作れない。 データの入力規制を利用せずにComboBoxでプルダウンをして選択するという動作です。

kmsakutomo
質問者

補足

詳細な説明、ありがとうございました。 データの入力規制を利用せずにComboBoxでプルダウンをして選択する、というのがミソですね。 実際にやってみて、ご教示頂いたように、選択肢から文字部分だけがセルに書き込まれ、私のやりたかった事が実現できているようです。 この方法は、マクロやVBAを使わないで実現可能なので魅力的なのですが、今回に実際にやってみた感想として、 コンボボックスの「疑似1セル」には常に↓が表示されていて(従来のデータの入力規制によるプルダウン方式だと、セルにマウスを置いた時に↓が表示される)、従来と見た目が変わってしまう。 という事でした。これはコンボボックスを使う限り仕方がないことなのでしょうか?

関連するQ&A