Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


4869 / 13646 ツリー ←次へ | 前へ→

【53896】リストの空白行を選択したくない シャープ 08/2/14(木) 0:58 質問[未読]
【53902】Re:リストの空白行を選択したくない Jaka 08/2/14(木) 10:35 発言[未読]
【53918】Re:リストの空白行を選択したくない シャープ 08/2/14(木) 23:50 質問[未読]
【53921】Re:リストの空白行を選択したくない Jaka 08/2/15(金) 12:19 発言[未読]
【53937】Re:リストの空白行を選択したくない シャープ 08/2/16(土) 10:45 お礼[未読]

【53896】リストの空白行を選択したくない
質問  シャープ  - 08/2/14(木) 0:58 -

引用なし
パスワード
   題名どおりなのですが、意外に難しく苦戦しています。

入力規則のリストを使いA5:A100までリスト範囲指定しました。
ただし、A50くらいまでしかまだデータはうまっていません。
なぜA100まで範囲を広げたかというと将来的にデータが増えるからです。

しかし、これでやると空白行のセルまでリストで多数選択できてしまいます。
これは、見栄え的にもよくないので何とかまだデータを入力していない空白
行は選択したくないのですが。。


ただ、複雑かもしれないのは、実はこのリスト範囲は他のブックのシートのテーブルのデータから参照しており、なぜそれをしたかというと通常のリスト指定だと
データが増えた場合いちいちその範囲指定をやり直さないといけないからです。
なので、参照範囲をその元となるテーブルからよんでいます。

※以下は関係ないかもしれませんが、期限もせまっておりあせっています。
レスをいただけると助かります。

【53902】Re:リストの空白行を選択したくない
発言  Jaka  - 08/2/14(木) 10:35 -

引用なし
パスワード
   リストが連続してあることが条件。

入力規則
一応別シート対応という事で、INDIRECTも使いました。
ただこれは、 = "" もカウントしてしまいます。

=OFFSET(INDIRECT("Sheet1!A5"),,,COUNTA(INDIRECT("Sheet1!A5:A100")),)

マクロで作業セルに連続したリストを作り、その作業列を参照させるように書いた方が言いと思います。
その範囲をマクロで入力規則の範囲に指定してやれば....。
上で書いた関数を使っても良いけど。

【53918】Re:リストの空白行を選択したくない
質問  シャープ  - 08/2/14(木) 23:50 -

引用なし
パスワード
   ▼Jaka さん:
空白行を選択しないのくらいと甘くみてました。
今日もまた1日挑みましたが、できず悔しいです。

 offset関数をどっちに当てはめるかが、悩んでしまいます。
リストの入力規則だと別ブック参照直接のやりかたが見つからず
止む無く、値をリンクさせることで(=[読書].歴史マスタ・・・)
という感じで読ませているので、ここにまたoffsetを当てるのか
あるいは、リンク元のほうに当てるか、。。

 現状でも表に値を追加しても選択肢は増えるんですが、どうにも
この空白行が消えません。取り合えず値が入っているセルだけ名前
定義にすると、データを追加したとき選択肢に反映されないし・・

 Jakaさんの関数もはめこんでみましたが、僕が位置をまちがえてるのか
うまくいかない状態です。もう少し意見をききたいので、質問とさせて
もらいます。すみません・・

 

【53921】Re:リストの空白行を選択したくない
発言  Jaka  - 08/2/15(金) 12:19 -

引用なし
パスワード
   >値をリンクさせることで(=[読書].歴史マスタ・・・)
>という感じで読ませているので
リンクさせるとデータの状態によっては、="" とかがありそうなので、
Counta関数だとその分もカウントしてしまうので、
リンクさせずにそのあたりをマクロで実データに変えてという意味だったんですが、マクロ使うなら全部マクロでやった方が楽かも。

>Jakaさんの関数もはめこんでみましたが、僕が位置をまちがえてるのか
>うまくいかない状態です。
こういうのは、まず作っている物に組み込む前に試された方がいいと思います。
新規ブックにて
sheet1のA5:A10に何かしら文字や数値を入れて、
試してください。
A5:A10のリストが育成されてたら、A11、A12とリストデータを増やして確認。

【53937】Re:リストの空白行を選択したくない
お礼  シャープ  - 08/2/16(土) 10:45 -

引用なし
パスワード
   ▼Jaka さん:
なるほど、確かにサラの状態でコードを試した方が良さそうですね。
今後はそうします。空白行は、ほんと侮れないです・・

どうやら、シートをいじっているうちに最後のセルがAFの220という
とんでもない位置になってて、それも原因でうまくいかないようです。
もう少し頑張ってみます。ありがとうございました。

4869 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free