質問: excelvbaマクロ『並べ替え』⇒『重複の削除』 excelvbaマクロについて確認させてください。 いくつかの値がエクセルのb10から下方向に入力されてあります。 この値をexcelの機能である『並べ替え』⇒『重複の削除』をexcelvbaマクロで同様に実行したいのですが、 どのようにすれば良いでしょうか。 ご教授下さい。 以上、よろしくお願いします。
回答: (1)範囲指定ー並べ変え マクロの記録で判る。 重複を判断する列(x)のデータをソート第1キーとして並び替える。 (2)重複の削除 最終データ行を掴むーー質問の回答に頻出する事項。勉強のこと。 最終行から、第10(この質問の場合)行まで(for i=最終行 to 10 step -1 nextを使う) 、x列のセルの値について、前の行と今の行の同じかどうか判別し、同じならその行を削除する。そのためには前の行(下の行)の値を次の行の処理のために受け渡す,変数を1つ用意し使う。 行削除はマクロの記録を参照。またはgoogleででも照会。 ソーと列と重複を考える列が違う場合は、1工夫必要。 ーーー これ以外に、フィルタオプションの設定ー重複するレコードは無視する、などのマクロの記録でも出来ると思う。非表示のみになるだけだが。その後1処理必要。 ーー そのほかにも色んなロジックが使える。 例 http://pc.nikkeibp.co.jp/article/npc/20060214/229179/?rt=nocnt ーー 質問異はエクセルのバージョンを書くこと。2007か2010か。 ーー コードは敢えてここに書かない。勉強してください。