追記
結局もっと簡単な方法があった....
うーむ俺すごいあほだった - uoz 作業日記
前回は、エクセルで2つのシートをマッチングするマクロを高速化するのに、両方をソートしろという話だった。
それでは、ソートできないシートの場合はどうするのか?
エクセルはデータベースというだけではなく、文書作成ソフト的な面があり、セルの並びに意味がある場合があって、並び順を変えられないことがある。
http://allabout.co.jp/gm/gc/297737/
この記事のように、エクセルをワード的に使ってるパターンだ。
ここまでの話じゃなくても、ソートしてはいけないときはどうするか。
対象のシートをコピーし、片方をそのまま保存して、もう片方をソートして、
これを読み込んで
ソートした場合の行番号と、ソートしてない時の行番号を対応づける配列を作ればよい。
あとは、マッチングしたいシート2つをソートした場合と同じだ。
ただし、ソートできないシートにアクセスするときは、行番号を対応づける配列を通してアクセスする。
これについて、言葉で説明してもよくわからない人もいそうなので、そのうちサンプルマクロを挙げようと思う。