|
▼はってんちゅう さん:
こんにちは
>列(コラム)で使用すると「RangeクラスのFindNextプロパティを取得できません」とのエラーとなります。
列方向の検索だからエラーになっているのではありません。
>Set cNo = .FindNext(cNo)
この右辺の cNo は、このセルの次から検索するよ という記述ですね。
では、その cNo は、どうなっているでしょうか?
まず、
>cNo = cNo.Column
これで、Rangeオブジェクトではなく 数値になっていますね。
で、仮に、ここを 別の変数 = cNo.Column とし、次のコードを
Columns(別の変数).Delete shift:=xlToLeft
このようにしたとしましょう。
そうすると、cNo というセルも含んで削除されますから、cNoがなくなるわけで
やはり、
Set cNo = .FndNext(cNo) でエラーになります。
対処する方法はいくつかありますが、一番簡単なのは、その都度削除するのではなく
検索できたセルオブジェクトをUnionで格納しておき、処理の最後に、この格納があれば
その EnireRow を Delete こんな感じでしょうかね。
|
|