解決済み

マクロ 重複削除の選択範囲を全てにしたい

  • 困ってます
  • 質問No.9537164
  • 閲覧数120
  • ありがとう数2
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 56% (175/310)

K列全てを選択し、重複削除をする流れをマクロ記録で作成しました。
コードはA1セルからS7731セルまでですが、毎回データの量が変わってしまうので、S7731セルまでではなく、全てにしたいですが、どうすればよいのですか?
宜しくお願いします。


Sub 重複削除()

Columns("K:K").Select
ActiveSheet.Range("$A$1:$S$7731").RemoveDuplicates Columns:=11, Header:= _
xlYes
End Sub

質問者が選んだベストアンサー

  • 回答No.4

ベストアンサー率 62% (431/685)

Visual Basic カテゴリマスター
>K列全てを選択し、
選択する必要はありません
>S7731セルまでではなく、全てにしたいですが
最終行が変わるのですね
>重複削除するのはK列のみですが…
k列=11列
なら、これでK列の重複は削除されますが
ActiveSheet.Range("A1").CurrentRegion. _
RemoveDuplicates Columns:=11, Header:=xlYes
お礼コメント
nkmyr

お礼率 56% (175/310)

ありがとうございます。
うまくできました。
投稿日時 - 2018-09-14 15:05:40
たいせつな将来のこと。あえて、知らない人に聞いてみよう。

その他の回答 (全3件)

  • 回答No.3

ベストアンサー率 62% (431/685)

Visual Basic カテゴリマスター
訂正
A列からS列まで
Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10 , 11, 12, 13, 14, 15, 16, 17, 18, 19)

もし、それぞれの列単位で重複を削除するのなら
For i = 1 To 19
ActiveSheet.Range("A1", Cells(Rows.Count, "S").End(xlUp)). _
RemoveDuplicates Columns:=i, Header:=xlYes
Next
補足コメント
nkmyr

お礼率 56% (175/310)

「もし、それぞれの列単位で重複を削除するのなら」
重複削除するのはK列のみですが…
投稿日時 - 2018-09-14 14:12:59
  • 回答No.2

ベストアンサー率 62% (431/685)

Visual Basic カテゴリマスター
試してください。
Columns:=11

Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10.211, 12, 13, 14, 15, 16, 17, 18, 19)
  • 回答No.1

ベストアンサー率 62% (431/685)

Visual Basic カテゴリマスター
>S7731セルまでではなく、全てにしたいですが
S列の最終行まで行います。
ActiveSheet.Range("$A$1", Cells(Rows.Count, "S").End(xlUp)).RemoveDuplicates Columns:=11, Header:=xlYes
補足コメント
nkmyr

お礼率 56% (175/310)

ありがとうございます。

記述してみましたところ、K列を選択しただけで、重複削除は実施していませんでした。
違うのでしょうか?
投稿日時 - 2018-09-14 12:12:47
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

特集


OKWAVE若者応援スペシャル企画

ピックアップ

ページ先頭へ