- ベストアンサー
excel2003 重複削除マクロ 再質問
QNo.3630625 excel2003 重複削除マクロ 回答マクロを実行した結果、うまくいかないケースがあり、再質問させて頂きました。 winxp he sp2, office2003 AB重複銘柄を削除した結果を、CDに書くマクロを教えてください。 この例では、日経300投信 チャイナボーチーが重複しています。 AB(銘柄コードと銘柄名)は一体です。データは沢山あります。1700個。 列がずれて見にくいです。 A B C D 1313 KODEX200 1313 KODEX200 1319 日経300投信 1319 日経300投信 1319 日経300投信 1380 秋川牧園 1380 秋川牧園 1381 アクシーズ 1381 アクシーズ 1412 チャイナボーチー 1412 チャイナボーチー 1724 シンクレイヤ 1412 チャイナボーチー 1735 伊田テクノス 1412 チャイナボーチー 1753 土屋ツーバイホーム 1724 シンクレイヤ 1783 A.Cホール 1735 伊田テクノス 1753 土屋ツーバイ 1783 A.Cホール 回答: 1行目は項目名と判断されてしまいますので提示の例ではうまく行きましたが、正しくありません。 では、マクロ作業上でダミーで先頭に1行追加し、項目を振り、終了後にダミー行を削除するように変えてみました。 逐条で解説もつけておきます。 Sub test03() Dim x As Long 'xは長整数と宣言 With ActiveSheet 'アクティブなシートで .Rows("1").Insert Shift:=xlDown 'ダミー行挿入 .Range("A1") = "Code" 'ダミー項目1 .Range("B1") = "Name" 'ダミー項目2 x = .Cells(.Rows.Count, 1).End(xlUp).Row '最終行取得 .Range("A1:B" & x).Select '範囲選択 Selection.AdvancedFilter Action:=xlFilterInPlace, Unique:=True '重複を表示しない Selection.Copy .Range("C1") 'コピーしてC1以降に貼り付け .ShowAllData 'すべてを表示 --------------------------------------ここでデバッグエラーが発生します。 .Rows("1").Delete Shift:=xlUp 'ダミー行削除 End With End Sub エラーが発生するケースまでは、特定していません。 よろしくお願いします。
お礼
1705個のデータで確認しました。希望通りの結果が得られました。 親切な対応 ありがとう御座いました。