[[20230223092022]] 『プルダウン』(初心) ページの最後に飛ぶ

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

 

『プルダウン』(初心)

基本的な事ですみません
プルダウンリスト作成で、リスト途中とかに
空白があった場合に空白を無視してリスト表示はかのうでしょう?
リスト一覧がC1からに、プルダウンをA1に設定します。
A列のように表示させる事は可能でしょうか?
C3のセルを上に詰めれば解決しますが…。
このままの状態でできますでしょうか?
入力規則で a1=offset($c$1,,,counta($c:$c)) 
では空白があいてしまいます。
宜しくお願いします。

 A  B  C  
リス   リス
サル   サル
イヌ   
ネコ   イヌ
     ネコ
 

< 使用 Excel:Excel2013、使用 OS:Windows10 >


・値のコンマ区切りリストか、
・このリストへのワークシート参照
を含める必要があります、とヘルプにあるので、
空白を除くようななにかの数式を入れるといったことはできないと思います。

>C3のセルを上に詰めれば解決しますが…。
それで何か支障ありますか?素直に対応することを推奨。
(abc) 2023/02/23(木) 09:56:17


頻繁に空白が出現しないようですと「abcさん」の案がいいと思いますが。

別の列(仮にD列)に空白を詰めたリストを作成して、その範囲を
リスト入力のリストの範囲に設定します。

D1: =IFERROR(INDEX($B$1:$B$10,AGGREGATE(15,6,ROW($A$1:$A$10)/($B$1:$B$10<>""),ROW(A1))),"")

多め(ここでは10行)に下にコピーします。

リスト入力の数式: =OFFSET($D$1,0,0,SUMPRODUCT((D$1:D$10<>"")*1),1)
(メジロ) 2023/02/23(木) 11:11:57


abcさん ありがとうございます。

数式では出来ないという事ですね。

メジロさん ありがとうございます。

そういう やり方もあるという事ですね。
参考にしたいと思います。

(初心) 2023/02/23(木) 15:22:44


メジロさん

設定してみたのですが、エラーがでて
プルダウンリストが消えます。
なんとなく私の設定にふびがあると思うのですが
お願いします
(初心) 2023/02/23(木) 17:37:34


当方では Excel2010 で確認して書き込んでいます。
行列番号付きの実際の表を提示してください。

それとリスト入力で「元の値」に入力した式もコピーして
貼り付けてください。
(メジロ) 2023/02/24(金) 06:47:09


 >リスト一覧がC1から
なので
 >D1:=IFERROR(INDEX($B$1:$B$10,AGGREGATE(15,6,ROW($A$1:$A$10)/($B$1:$B$10<>""),ROW(A1))),"")
D1に=IFERROR(INDEX($C$1:$C$10,AGGREGATE(15,6,ROW($A$1:$A$10)/($C$1:$C$10<>""),ROW(A1))),"")
ですね。
なるほど〜

(檸檬) 2023/02/24(金) 17:49:08


檸檬さん

どういう事なのでしょうか?
なんとなくセルの指定に誤りがあるのは
わかります。
数式を解説していただいてもよろしいでしょうか?
お手数を、おかけします。
(初心) 2023/02/24(金) 19:39:05


 >設定してみたのですが、エラーがでて
 下記の順序で設定しましたか。
  ➀>>別の列(仮にD列)に空白を詰めたリストを作成して、
    D1=IFERROR(INDEX($B$1:$B$10,AGGREGATE(15,6,ROW($A$1:$A$10)/($B$1:$B$10<>""),ROW(A1))),"")                       
       |[A] |[B] |[C]|[D] 
    [1]|ネコ|リス|   |リス
    [2]|    |サル|   |サル
    [3]|    |    |   |イヌ
    [4]|    |イヌ|   |ネコ
    [5]|    |ネコ|   |    
  ➁>>その範囲をリスト入力のリストの範囲に設定します。
   リスト入力の数式: =OFFSET($D$1,0,0,SUMPRODUCT((D$1:D$10<>"")*1),1)
 2013で確認済みです。エラーは出ません。
 >数式を解説していただいてもよろしいでしょうか?
 空白を詰める作業です。
(drh) 2023/02/24(金) 21:04:02

 >下記の順序で設定しましたか。

 質問文無視してりゃ意味が無い。
(質問者無視) 2023/02/24(金) 21:20:28

drhさん
ありがとうです。
設定手順通りにはやってません。
明日にでもやって見たいと思います。
メジロさんの通りにはやったのですが....。
理解が足りなかったので皆様にご迷惑をお掛けしました。
数式の意味は教えて下さい。
(初心) 2023/02/24(金) 22:16:47

 >理解が足りなかったので

 と言うより、質問者に沿った回答は
 abcさんと檸檬さんだけなんだが。
(質問者無視の一人よがり) 2023/02/24(金) 22:33:49

皆様ありがとうございます。
やっと確認しました。
リスト入力をD1ないしはA1セルで行ってました。
数式を解説していただきたいです。

(初心) 2023/02/25(土) 20:43:12


>数式を解説していただきたいです。
まずは、AGGREGATE関数のヘルプを調べて下さい。これは自分のことなんで自分でするしかないです。
15 : SMALL関数
6 :エラー値を無視します。
AGGREGATE(15,6,ROW($A$1:$A$10)/($C$1:$C$10<>""),ROW(A1)) は、
空白となっているセルではエラーになる式をあえて指定して、
C1:C10の中で空白でないセルの行番号を小さい順に取り出しているということです。
 
と言っても分からないかも知れませんねえ。
「数式」の「数式の検証」を実行してみると、
実際にどんなことが行われているかがわかるも知れません。

数式でなくても、以下のいずれかの方法でも簡単にできると思います。
・(空白も含むセル範囲を選択して)オートフィルタで、空白以外を抽出して、
 別の箇所にコピーペイストする。
・空白も含むセル範囲を選択してうえで、「条件を指定してジャンプ」で空白セルを指定、
 空白だけを選択状態にして、削除(上方向にシフト)を実行
 
そもそも入力選択肢ってそんなに頻繁に変わりますか?仮にそうでも、
・空白を除く処理は一度行えばよく、
・以降の追加は空白無いように追加していくだけじゃないですか?
・不要になったときには、消去じゃなく削除すればいいだけでは?
(abc) 2023/02/26(日) 10:19:23


コメント返信:

[ 一覧(最新更新順) ]


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