ベストアンサー エクセルVBAで重複する行を削除したい 2009/01/09 14:42 エクセルVBAで重複する行を削除したいと考えています。 フィルタオプションの設定でやればできるのですが、 VBAでやろうと考えています。 どうしたらいいのしょうか。 よろしくお願いします。 みんなの回答 (1) 専門家の回答 質問者が選んだベストアンサー ベストアンサー hige_082 ベストアンサー率50% (379/747) 2009/01/09 23:27 回答No.1 >フィルタオプションの設定でやればできる 操作をマクロの記録で記録し、出来たコードを アレンジすればよいのでは 質問者 お礼 2009/01/13 19:41 ありがとうございます。 解決しました。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピュータープログラミング・開発その他(プログラミング・開発) 関連するQ&A エクセルまたはVBAで重複行を削除 例えば、 A B 1 1 a 2 2 b 3 3 c 4 4 d 5 4 d 6 5 e 7 6 g 8 6 g といった表があるとします。 A列をキーに、昇順にされた一覧表です。 ここで番号が重複している行、この例では4行目と5行目、7行目と8行目がそうです。 こういった重複した行を検索して、行削除したいのですがどんな方法が可能でしょうか? 最終的にはVBAでのイベントになるでしょうが、それ以前にエクセルで前準備などしておくようなことは必要でしょうか? 表自体はかなり膨大な量のデータベースです。 よろしくお願いします。 EXCELで重複行のデータを削除したいと思っています。 EXCELで重複行のデータを削除したいと思っています。 フィルタの重複するレコードは無視するにチェックをいれる方法は知っているのですが、 この方法だと新しく出来たデータ列が数式ではなく数式の計算結果でデータ列が出来てしまいます。 どうしたら数式のままで重複データを削除出来るのでしょうか? EXCEL VBAの重複行削除について EXCEL2010を使用しています。 添付画像の「重複行削除 前」の表を、RemoveDuplicatesで下の様にコードを組んで A列で重複する行を見て重複する行を削除しています。 Public Sub 重複行削除() With WorkSheets(1) .Range(.Cells(1, 1), .Cells(8, 3)).RemoveDuplicates _ Columns:=1, Header:=xlYes End With End Sub すると、日付の新しいデータが削除され、古いデータが残ってしまいます。 (添付画像の「重複行削除 後」) ReniveDuplicates Columns:=Array(1,3) とした場合は、すべてのデータが残ってしまいます。 添付画像の「欲しいデータ」の表の様に、 日付の新しいものを残すように重複行削除は出来ないでしょうか? 詳しい方、どうか教えてください。 よろしくお願いします。 ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム エクセルVBA 重複データから1種類ずつ抽出 いつもお世話になります。 5万行のエクセルデータで、A列に20種類のデータが重複しています。 このデータを、別シートのA1~A20に1種類ずつコピーしたいのです。 オートフィルタ→フィルタオプション→重複するレコードは無視するでチャレンジしてみたのですが、5万行だとデータ量の関係で時間がかかりすぎるので、VBAでもっと短時間で出来ないかと思い、投稿させていただきました。 よろしくお願いいたします。 フィルタオプションの重複削除 エクセル2003を使っています。 フィルタオプションを使って「重複するレコードは無視する」にチェックを入れ、重複を非表示にしたいのですが、最初の重複するデータが残り、次に重複するデータは非表示されます。 例えば、1行目にあいうえお 2行目にかきくけこ 3行目にさしすせそ 4行目にあいうえお 5行目にかきくけこ があるとします。 フィルタオプションを使って「重複するレコードは無視する」にチェックを入れると、 1行目にあいうえお 2行目にかきくけこ 3行目にさしすせそ 4行目にあいうえお となり、重複している、かきくけこは非表示になっているのですが、同じく重複しているあいうえおは表示されたままです。 これはなぜでしょうか? よろしくお願い致します。 Excelで重複行を非表示にする方法(重複行の最後の行だけ表示させる方法)について教えてください。 エクセルで重複するデータを非表示にする方法は、[データ]→[フィルタ]→[フィルタオプションの設定]を選択し、[重複するレコードは無視する]にチェックを入れればできますが、デフォルトでは重複行の最初の行だけを表示し、残りの重複行を非表示にしてしまいます。 最初の重複行ではなく最後の重複行だけを残し、他の行を非表示にしたいのですが方法がわかりません。 ちなみに上記の[重複するレコードは無視する]にチェックするまでの流れをマクロに記録させ、マクロの編集をクリックすると下記のような記述になっていました。 Columns("A:A").Select Range("A1:A100").AdvancedFilter Action:=xlFilterInPlace, Unique:=True このソースのどの部分を変更すれば、1番最後の重複行だけを残し他の行を非表示にすることが可能になるのか教えてください。 よろしくお願いします。 Excel VBAで値が重複する行を削除する Excel2000を使っています。 シートAに数千件のデータがあります。 シートBのE列にある文字とシートAのD列の文字が重複する場合に、シートAの重複するセルがある行を削除する(且つできれば行のデータを抜き出すVBAを作ろうと考えています。 最近VBAの初心者本をやっと理解したところで、ちんぷんかんぷんとまではいかないけど、知恵熱がでました。 仕事なので自分でなんとかすべきかと思いますが、きっかけの調べ方がまずわからない。 どなたか、解かるきっかけだけでも与えて頂けないでしょうか。とくに、別シートの値と重複する値を探す場合に何をいれるかわかればきっと道は開けると思うんですが…。 初めての質問なので、質問内容が至らなかったらもうしわけありません。 【Excel VBA】重複行の削除 はじめまして。 IDの重複を削除し、日付データを横1列にまとめるVBAについてご教示いただけますと幸いです。 ------------------------------------------------------- ▼シート1(データ入力がされているシート) A B C D E F 1 ID 日付 2 1234 1/1 1/6 1/10 1/20 3 1234 2/3 2/20 4 1234 3/2 5 7777 1/10 1/15 1/20 6 7777 2/2 2/12 2/22 7 9876 2/3 ⇓ マクロ起動後 ▼シート2(重複行を削除しまとめたシート) A B C D E F G H 1 ID 日付 2 1234 1/1 1/6 1/10 1/20 2/3 2/20 3/2 3 7777 1/10 1/15 1/20 2/2 2/12 2/22 4 9876 2/3 【補足】 列情報 ・A列…ID ・B-F列…日付(左詰め) ※日付はIDごと月毎に行が変わるため、IDによって複数行存在する場合があります。 ※A列のIDは重複しない場合もあれば、4行以上ある場合があります。 ※シート1のデータはおおよそ1000-5000行です。 ※IDに対して、日付は5つあれば問題ありません。そのためG列以降の日付を削除しても支障はございません。 ------------------------------------------------------ VBAの知識があまりなく、調べて出てきたものをコピペ使用も試みたのですが、 上手く動かす事ができませんでした…。 お力添え頂けますと幸いです…。 Windows10でエクセル2016を使用しております。 何卒宜しくお願いいたします。 エクセルで重複行を削除 エクセルで重複行を削除したいのですが、 どうすればいいでしょうか? たとえば名前が1列に並んでいて ××○○ 山田太郎 △田□□ 山田太郎 こんなとき、山田太郎を1行だけに、 まとめたいのですが・・・ データが多いのでソートして 1件1件削除していくのも時間がかかります。 何かいい方法がありましたら よろしくお願いします。 Excel VBAでの行の削除について Excel VBAを使用して2行ずつ行の削除をし、1行残して(3行目を残す)また2行ずつ行の削除、1行残しす(6行目を残す)をループして行う方法が知りたいです。 イメージとしては以下のような感じです。 ━━【A】━━━━ 【1】あいうえお 【2】かきくけこ 【3】さしすせそ 【4】たちつてと 【5】なにぬねの 【6】はひふへほ 【7】まみむめも 【8】やゆよ 【9】らりるれろ ━━━━━━━━━ ↓マクロ実行後↓ ━━【A】━━━━ 【1】さしすせそ 【2】はひふへほ 【3】らりるれろ ━━━━━━━━━ 当方VBA初心者ですので、できるだけわかりやすくご教授頂けると助かります。 よろしくお願いいたします。 エクセルで重複行をすべて削除するにはどうすればよいでしょうか? 例えば、昇順で並べ替えて以下のようにエクセルで準備したとします。 A列 1行 aa 2行 aa 3行 bb 4行 bb 5行 cc 6行 cc 7行 dd 8行 ee そこで重複する行ごと削除したいのですがどうすればよいでしょうか? 削除結果は A列 1行 dd 2行 ee 上記のようにしたいです。 重複する1行だけは削除できたのですが、 2行ごと削除の方法がわかりません。 ご教授いただきたく存じます。 よろしくお願いいたします。 文字「3M」はexcelで行数多いと重複削除不可 excel vba でRemoveDuplicatesを使用して、重複削除を行っていますが、 次の場合、重複削除ができません。重複削除方法を教えて下さい。 但し、ソートやIF文を使用しない方法をお願いします。 理由は、処理時間が掛からないようにしたいためです。 現象) ワークシートのA列の274行目と11512行目に、「3M」が記載されています。A列は、1行目から11512行目まで値が記載され、その内、重複は、上記の「3M」だけです。 vbaを起動して、重複削除させても「重複した値は見つかりませんでした。」となります。 この文字「3M」以外の文字に置き換えると削除できます。また、「3M」を隣接した行に並べると削除できます。 また、vbaでなく、excelのコマンドの「重複削除」を行っても、同じ現象です。 重複行の間隔がいくつだと削除できないかを調べました。 間が10行以上は削除できませんでした。9行以下は削除できました。 添付画像参照下さい。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム Excelの重複データーを削除したい Excel 2010 の A列 に複数のデーターがあります。これをExcelの機能で昇順に並べ替えます。 重複したデーターが有れば削除し、ブランク行のない状態にするため VBA で処理していますが、この作業を簡単に行える良い方法が有れば教えてください。 重複する行の削除の方法(VBA) エクセルのVBAで質問です。 以下のような表で、 A B C 1 赤 10 × 2 青 20 ○ 3 青 20 ○ 4 黄 30 × 5 緑 10 ○ 6 紫 15 △ 7 紫 15 △ 8 紫 15 △ Aのセルの要素が重複しているこのような場合に1つだけを残したい、 つまり3行目と7.8行目を削除したいのです。 (実際の列数は10、行数は1万程度あります) このような場合、どのようなマクロを組めばいいでしょうか? なお、最終行の場所は lngMaxRow = Cells.SpecialCells(xlLastCell).Rowによって取得しております。 出来れば後学のために処理の簡単な説明も付けていただけると助かります。 宜しくお願いします。 Excel2010で行ごとの重複削除 Excel2010です。 A行目 1 3 5 5 2 2 3 B行目 2 3 5 5 4 4 C行目 1 9 7 9 9 ↓ A行目 1 3 5 2 B行目 2 3 4 5 C行目 1 7 9 というように、行ごとに重複の削除をしたいと思っています。 データタブに重複の削除があるのですが、列ごとにやるようなので、一度シート全体を 行と列を入れ替えて別シートにコピーして、 1列目全体を選択して、1列目で重複の削除を実行 2列目全体を選択して、2列目で重複の削除を実行 ・・・ というやり方もあるのですが、今扱っているエクセルは197行197列あります。 列選択、重複の削除アイコンをクリックするのを197回繰り返すのは大変です。 自動化する方法はないものでしょうか? エクセルの行削除VBA 次の条件を満たすエクセルVBAの記述を教えてください。 A列に「ページTOP」の文字がある行から文末までの行を削除 A列に「PROGRAM…」のある行と次の1行を残して「4:00~…」を含む行までを削除 (例 A10 PROGRAM… A11 AB A12 hij A13 tuy A14 4:00… ※A12~A14を削除 A1からA列に「PROGRAM…」のある行まで行削除 Excel2010/WindowsXP エクセルで重複を削除 エクセルの顧客データが1000行くらいあるのですが、 何件か重複しているものがあります。 それらを見つけ出して、重複している分を削除したいのです。 できるだけ簡単にできる方法をお願いします。 Excelで行の要素に重複がある場合の行削除 Excelに関して質問です。 次のような場合の、とある一部分だけ重複した行を双方ともに削除したい場合はどうしたら良いのでしょうか。 ※左側は行番号です。 【1行目と7行目の001と、3行目と6行目の003が重複しているので...】 1 001 田中 2 002 鈴木 3 003 高橋 4 006 武田 5 005 石森 6 003 岡野 7 001 野田 ↓ 【1行目、7行目、3行目、6行目を全部削除】 2 002 鈴木 4 006 武田 5 005 石森 どうしたらいいのでしょうか。教えてください。 Excel重複データ削除について Excelで重複したデータを削除しようと思い、データが入っている範囲を選択して フィルターオプションで「重複レコードは無視する」にチェックを入れて実行しても、何も起こりません・・・ 今まで何度か使ったこともあるし、できなかったことはなかったのですが、今回は同じに見えるデータなのにExcelが同じと判断してくれていないようです。Exactなどの関数も使ってみましたがダメでした。 今までと違うとしたら、CSVから値のみコピーしてExcelに貼り付けたデータ、というくらいしか思い当たらないのですが・・・ これが原因なのでしょうか? よろしくお願い致します。 Excelで、重複データを一括で削除する方法 お世話になっております。 Excelで、重複データを一括で削除する方法について 300列ほどあるデータがあります。 (行数は、各列に30行ほどです) 各列には重複するデータがあります。これを削除したく。 なお、各列(隣の列)は、関連性がありません。 よって、複数の列を参照して重複データを削除する必要はなく A列内の重複データ、B列の重複データをそれぞれ削除したいのですが、 フィルタオプションからの重複データを無視する、や、重複データの削除 機能では、1列ずつ実行することで可能ですが、300列以上あるので 現実的ではありません。 そこで、一括で各列の重複データを削除する方法を教えてください。 ※なお、列は300ほどあるため、作業用(countifで重複をピックアップした後、フィルタして 削除など)の方法は、列分つくるのは現実的ではないため、それ以外の方法はないでしょうか。 よろしくお願いします。 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター プログラミング・開発 Microsoft ASPC・C++・C#CGIJavaJavaScriptPerlPHPVisual BasicHTMLXMLCSSFlashAJAXRubySwiftPythonパフォーマンス・チューニングオープンソース開発SEOスマートフォンアプリ開発その他(プログラミング・開発) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など
お礼
ありがとうございます。 解決しました。