
RemoveDuplicatesメソッドについて教えてください。
シート1にシート2から値をもってくるようにしています。
シート1セルが下のようになっています。
A1 =INDEX(Sheet2!A:A,1)
A2 =INDEX(Sheet2!A:A,2)
A3 =INDEX(Sheet2!A:A,3)
B1 =INDEX(Sheet2!B:B,1)
B2 =INDEX(Sheet2!B:B,2)
B3 =INDEX(Sheet2!B:B,3)
この関数が入った状態で、
WorkSheet(1).Range("A:B").RemoveDuplicates Columns:=1, Header:=xlYes
を起動し、Aが重複する場合は行を削除します。
A1とA2が重複していて
RemoveDuplicatesメソッドで2行目が削除されたとします。
削除された直後、A2セルには
=INDEX(Sheet2!A:A,2)、もしくは
=INDEX(Sheet2!A:A,3)
のどちらが入っているのでしょう。。
うまくいくのでしょうか。
また、行数はそのときによってまちまちなのですが、全ての行を対象にしているので、範囲指定で問題になることはないと考えてよいでしょうか。
No.1ベストアンサー
- 回答日時:
こんばんは
同じ様なことを何度も質問なさっているようですが・・・
https://oshiete.goo.ne.jp/qa/13371314.html
(↑)にも書きましたように、試してみた方が早いです。
ちなみに
>A1 =INDEX(Sheet2!A:A,1)
>A2 =INDEX(Sheet2!A:A,2)
のような、直接指定の関数式であれば、そのまま変わることはありません。
ただし、この関数式をシートに入力するのは、それなりに面倒なのではないでしょうか?
>行数はそのときによってまちまちなのですが~~
VBAで処理しているのならば、最終行を調べれば良いだけの話と思いますけれど・・
調べるのすら面倒なら、UsedRangeとかでも大分範囲は絞れるものと思います。
実際に何をなさりたいのか不明ですけれど、関数を残す必要が無いのであれば(重複削除なので、多分、値が変わることに対応する必要は無いものと推測)、直接値を転記して重複削除するのが簡単でしょう。
(前回回答にも書いたので、説明や例は省略。)
こんばんは
回答ありがとうございます_(._.)_
いろんなかたに回答をいただくことで勉強になることがたくさんあり、似たような質問をしています。
勉強になります。
ご指摘の通りです。
いつもありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 1 2023/02/27 22:21
- Visual Basic(VBA) vbaエクセルマクロについて RemoveDuplicatesを使わずに、重複行を削除すらマクロを作 3 2023/03/02 22:03
- Excel(エクセル) Excelにて、行の最後のセルの値をコピーして別sheetに張りつけるVBAコードをご教授願います 3 2022/11/20 14:35
- Excel(エクセル) エクセルのINDEXについて 2 2022/04/17 21:41
- Excel(エクセル) エクセルでエラーを無視して一番左側のセルの値を返したい 2 2023/07/27 13:06
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) エクセル 全自動シフト表の祝日シフト表示を消すには? 3 2022/04/23 16:43
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロ実行後に別シートの残像...
-
EXCELのSheet番号って変更でき...
-
マクロの「SaveAs」でエラーが...
-
アクセスからエクセルへ出力時...
-
Count Ifのセルの範囲指定に変...
-
VBA別シートの最終行の次行へ転...
-
VBA 空白行に転記する
-
グラフマクロで系列を変数にす...
-
複数シートの複数列に入力され...
-
FindNextがうまくいかない
-
Changeイベントで複数セルへの...
-
Unionでの他のシートの参照につ...
-
VBAで変数の数/変数名を動的に...
-
VBA シリアル値から月日への変換
-
VBA 別ブックからの転記の高速...
-
【VBA】データを各シートに自動...
-
【VBA】特定の条件でセルをコピー
-
【マクロ】実行時エラー '424':...
-
エクセルで離れた列を選択して...
-
「段」と「行」の違いがよくわ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELのSheet番号って変更でき...
-
マクロの「SaveAs」でエラーが...
-
マクロ実行後に別シートの残像...
-
VBA 空白行に転記する
-
VBA別シートの最終行の次行へ転...
-
Count Ifのセルの範囲指定に変...
-
【VBA】データを各シートに自動...
-
Changeイベントで複数セルへの...
-
VBAで変数の数/変数名を動的に...
-
VBA 別ブックからの転記の高速...
-
Excel VBA オートフィルターで...
-
【VBA】特定の条件でセルをコピー
-
VBAでEXCELから固定長...
-
Excel2013で切り取り禁止
-
Unionでの他のシートの参照につ...
-
楽天RSSからエクセルVBAを使用...
-
100万件越えCSVから条件を満た...
-
ExcelのVBマクロを、バックグラ...
-
VBA 実行時エラー1004 rangeメ...
-
同じ作業(データコピー・貼付...
おすすめ情報