プロが教えるわが家の防犯対策術!

EXCEL2000で入力規則のリストを設定しています。

IF(セル番号="","",VLOOKUP(…))を使用して表を作っています。
表は途中からIFによって空白行になっています。
この表全体をリストの「元の値」に設定しているのですが、プルダウンメニューに空白が延々と表示されてしまいます。
この空白を表示させない方法はあるでしょうか?

どうかよろしくお願いします。

もう1つ「EXCELの入力規則のリストについて。その1」という質問もさせていただいています。
併せてよろしくお願いします。

A 回答 (2件)

こんばんは。



範囲がA2:A20で、後半に""のセルがあるとしたら、元の値に
=A2:INDEX(A2:A20,ROWS(A2:A20)-COUNTBLANK(A2:A20))
と書いてみてください。

OFFSET関数があまり好きではないので、このような書き方
をしましたが、↓もご参考に。

参考URL:http://www2.odn.ne.jp/excel/waza/validation.html …
    • good
    • 0
この回答へのお礼

どうもありがとうございます。

できました!
なるべく関数で行いたかったので嬉しいです!

お礼日時:2004/07/30 06:08

確かにそのようになりますね。


空白を無視するもその意味ではないらしい。
以前「名前」付けによって解決する回答が出たような記憶があります。
どうしても回答がないと言う場合は、VBAですが
Sub Test01()
Range("G1:G18").Select '入力規則を設定する範囲
d = 1
While Not Cells(d, "B") = "" 'B列にあるリストを使うとき
d = d + 1
Wend
n = Trim(Str(d - 1)) '空白でない最下行を捉える
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$B$1:$B$" & n
End With
End Sub
を実行すれば出来ました。上記コードはマクロの記録をとって、少し変えるだけです。
    • good
    • 0
この回答へのお礼

どうもありがとうございました。

VBAはとても難しそうですが、挑戦してみます。

お礼日時:2004/07/30 06:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!