入力規則のリスト表示の方法について教えていただきたいのですが・・・
A列 B列
A,B,C A-1,A-2,A-3,B-1,B-2,B-3,C-1,C-2,C-3
A列に、A,B,Cと入力規則を設定します。
B列には、A列に入力したAに関係するA-1,A-2,A-3、
Bに関係するB-1,B-2,B-3、Cに関係するC-1,C-2,C-3
を入れたいのですが、B列のリストが多くなりすぎるので、A列にAを入力したときはA-1,A-2,A-3のみをリストに表示させることは、可能でしょうか?(B,Cについても同じ)
よろしくお願いします。
No.1
- 回答日時:
A-1
A-2
A-3
として「挿入」「名前」「定義」で「A列」と名前付けします。
同様に、B列・C列を名前付けしてください。
入力規則をリストにして
元の値に=INDIRECT($A2&"列")
とします。
A2の値を参照して選択できるリストが変わります。
上記例では"列"にしましたが他の文字でも大丈夫です。
注意:名前付けで、AA,A1等のようにセルや列・行として判定される物は名前にできません。
この回答への補足
mshr1962さま早速のご回答ありがとうございます。
いろいろやってみたのですが、うまくいかず補足させていただいてよろしいでしょうか?
A列 B列
○○(株) (配送、請求、確認)
△△(株) (訪問、面談、連絡)
××(株) (事務、郵便、電話)
↑
入力規則(リスト)で表示
A列のおのおののセルには入力規則のリストで○○(株)、△△(株)、××(株)をリストで選択できるようにします。
○○(株)に関する業務は(配送、請求、確認)と決まっていますので、A列のセルに○○(株) が選択されたらB列おのおののセルのリストには(配送、請求、確認)だけを表示させたい。
A列のセルに△△(株)が選択されたらB列のセルには(訪問、面談、連絡)だけを選択させたい。
(B列はA列で選択された会社に関係する業務だけをリスト表示)
なかなか上手く説明できずすいません。よろしくお願いします。
No.2
- 回答日時:
A列というのはリストボックスなのでしょうか?それともテキストボックスなのでしょうか?
テキストボックスなら、KeyDownイベントで
Dim Integer i
i = 0
for i = 1 to 3
テキストの内容 & "-" & i
next
とかやってリストに付け加えられますね。
いま、VBの動作環境が確認できない状態なので(JAVAのみで・・・)正確な文法は忘れてしまいましたが大体イメージはできるかと。
この回答への補足
utataneさま早速のご回答ありがとうございます。
#1さんの補足に記入させていただきましたが、リストボックスです。
できたら今回はVBを使用せずできたら最高なのですが・・・
No.3ベストアンサー
- 回答日時:
#1のmshr1962です。
名前の定義で()は使えません。
例えば名前定義で○○として
=INDIRECT(SUBSTITUTE(A1,"(株)",""))
として(株)をはずす必要があります。
もしくは
○○株式会社とすれば
=INDIRECT(A1)
でできます。
No.4
- 回答日時:
入力規則で行うには、1つ問題が出てくるとは思いますが、
こんな方法はどうでしょうか?
A列 B列 C列 D列
○○(株) 配送 請求 確認
△△(株) 訪問 面談 連絡
××(株) 事務 郵便 電話
のように、1つの会社での業務は、1行にすべて書きます。
E列、F列・・・
「挿入」→「名前」→「定義」で
会社 Sheet1!A1:A3 (会社の範囲)
業務 Sheet1!B1 (業務の左上のセル)
とします。
会社を入力するセルは 入力規則で
=会社
業務を入力するセルは 入力規則で
=OFFSET(業務,MATCH(A1,会社,0)-1,0,1,3)
(会社を入力するセルをA1にしています)
(業務はD列まで(B,C,Dの3列)にしていますので、
E列やF列に増やす場合、最後の3を4,5に変えてください。
業務数が、会社毎に違う場合、リストに空白が表示されてしまうので
表示させたくなければ、
=OFFSET(業務,MATCH(A1,会社,0)-1,0,1,COUNTA(OFFSET(業務,MATCH(A1,会社,0)-1,0,1,3)))
にしてください。
で、該当する会社のみの業務リストが表示されます。
ただ、使ってみればわかると思いますが、
A社で業務内容まで選択して、B社に変更しても
A社の業務内容が消える事はありません。
この問題点は、関数での解決は私にはわかりません。
VBAを利用すれば、できますが。
間違った回答でしたらすみません。
この回答への補足
taisuke555さま、ありがとうございました。
VBAでチャレンジしたかったんですが、業務の内容は従業員に入れてもらうようにしたいので今回はできたら関数レベルでできれば幸いでした。
(といっても私もまだVBAの超初心者なのですが・・)
今後ともよろしくお願いします。
No.5
- 回答日時:
よく見たらVBのカテゴリですけど、EXCELについてですよね?
私の回答が検討違いならごめんなさい。
また、この質問がEXCELについてでしたら、
「家庭向け」ではないと思いますが、
教えて!gooトップ > コンピューター [家庭向け] > ソフトウェア > Microsoftアプリケーション
の方で、EXCELの質問が出ていますので、
そちらの方が、回答は付きやすいと思います。
それと、何についての質問なのかを明確にした方がいいと思います。
VBなら VBAなのか VB6なのか VB.NETなのか
EXCELなら EXCEL98 EXCEL2000等
(バージョンによってはうまくいかない事もありますから)
taisuke555さん ご指摘ありがとうございます。
今回質問する前に関数がいいのかVBがいいのかよくわからず質問してしまって、ご迷惑をお掛けしました。
今後ともよろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- Excel(エクセル) Excel 値を返す数式についてです 3 2022/11/21 20:08
- Excel(エクセル) ExcelのIF関数について 4 2023/05/24 12:54
- Excel(エクセル) 別シートの表の値を参照したい 2 2022/03/30 15:11
- Excel(エクセル) エクセルデーターの並び替え 5 2022/08/06 09:59
- Excel(エクセル) [オートフィルター]機能について 3 2023/02/04 14:32
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) Googleスプレッドシートで、あるセルの値に応じて行を自動挿入したい 急いでいます! くわしい方、 3 2023/03/06 19:05
- Excel(エクセル) EXCEL 行内のデータを2行に分けて、表を作り直したいのです。教えてください。 5 2023/06/25 14:00
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Worksheets メソッドは失敗しま...
-
Excelで、あるセルの値に応じて...
-
エクセルについて
-
B列の最終行までA列をオート...
-
vba 2つの条件が一致したら...
-
マクロ 最終列をコピーして最終...
-
URLのリンク切れをマクロを使っ...
-
VBA A列にありB列にないものま...
-
Cellsのかっこの中はどっちが行...
-
VBAでのリスト不一致抽出について
-
VBA 何かしら文字が入っていたら
-
VBAのFind関数で結合セルを検索...
-
VBAを使って検索したセルをコピ...
-
Changeイベントでの複数セルの...
-
【VBA】2つのシートの値を比較...
-
空白セルをとばして転記
-
データグリッドビューの一番最...
-
文字列の結合を空白行まで実行
-
IIF関数の使い方
-
【Excel VBA】カンマと改行コー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Worksheets メソッドは失敗しま...
-
Excelで、あるセルの値に応じて...
-
B列の最終行までA列をオート...
-
vba 2つの条件が一致したら...
-
Cellsのかっこの中はどっちが行...
-
VBAを使って検索したセルをコピ...
-
VBAのFind関数で結合セルを検索...
-
文字列の結合を空白行まで実行
-
IIF関数の使い方
-
【VBA】2つのシートの値を比較...
-
マクロ 最終列をコピーして最終...
-
Changeイベントでの複数セルの...
-
VBA 何かしら文字が入っていたら
-
URLのリンク切れをマクロを使っ...
-
エクセルVBAにて =A1=B1とすれ...
-
VBAでのリスト不一致抽出について
-
データグリッドビューの一番最...
-
マクロについて。S列の途中から...
-
VBA UserFormからの転記で
-
targetをA列のセルに限定するに...
おすすめ情報