| 
    
     |  | 詳しく説明しないで、ごめんなさいね 
 >冒頭ご案内いただいたLike演算子を使う方法ですが、ここでワイルドカードを使う必然性が、
 >私にはプロシージャから読み取れませんでした。
 
 ListIndexが-1のListBoxが有る時、そのListBoxの項目を抽出条件から除外すると言う意味で考えています
 今回提示したコードでは、ListBoxが3つ(本当は10との事ですが)として書いています
 例えば、もしListBox1とListBox3が選択されて居て、ListBox2が選択されて居ない場合
 抽出は、ListBox1の条件とListBox3の条件だけで抽出が行われます
 理由は、「vntB = "*"」と成る為
 
 If .Offset(i, 1).Value Like vntB Then
 
 の「.Offset(i, 1).Value Like vntB」の結果が常に「True」成る為、
 「.Offset(i, 1).Value」の項目は、抽出条件から除外された事に成ります
 今回はListBoxなので、UserFormが起動した状態では、一度選択されたListBoxを、
 「ListIndex = -1」にコード上以外では出来ないと思いましたので
 「UserForm_Initialize()」の中だけで行っています、
 もし「ListIndex = -1」にする操作が有るならば、その時点で、変数に"*"を入れる操作を加えて下さい
 
 >また、最後に動的配列を使われていますが、格納した配列の吐き出し先がListoboxである点も良くわかりませんでした。
 >せっかくご案内いただきましたのに、こちらの理解不足で誠に申し訳ありません。
 >しばらく時間をかけて、送って頂いたプロシージャを分析させていただきます。
 
 迷わせてしまってごめん
 此れは、Testが出来る様に、UserFormの形を整える為に行っている事で
 特に本題には関係有りません
 ただ内容は、このコードではListBoxに表示する項目をリストから取得している為
 データの重複取りを行っているコードです
 
 
 |  |