• 締切済み

EXCEL表で同じ数値の行を削除する方法

imogasiの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.9

マクロを使わない方法ということなのだが、やってみたので上げておきます。 VBA向きの処理のように思ったので。 Sheet1  元シート。 下記のSet sh1 = Worksheets("sheet1")の()内を自分のシート 名で変えてください。 Sheet2  中間シート Sheet3  結果シート Sheet2、Sheet3という名のシートを用意してください。 Sub test01() Dim sh1 As Worksheet Dim sh2 As Worksheet Dim sh3 As Worksheet Set sh1 = Worksheets("sheet1") Set sh2 = Worksheets("sheet2") Set sh3 = Worksheets("sheet3") sh1.Cells.Copy Destination:=sh2.Cells d = sh2.Range("A65536").End(xlUp).Row 'MsgBox d fg = InputBox("データ最初行=") '----- m = sh2.Cells(1, "B") For i = fg To d If sh2.Cells(i, "B") = "" Then sh2.Cells(i, "B") = m End If m = sh2.Cells(i, "B") Next i '---- sh2.Cells.Range(sh2.Cells(fg, "A"), sh2.Cells(d, "J")).Sort key1:=sh2.Range("A1"), _ key2:=sh2.Range("B1") '--------- k = 1 m1 = sh2.Cells(fg, "A"): m2 = sh2.Cells(fg, "B") For i = fg To d If sh2.Cells(i, "A") = m1 And sh2.Cells(i, "B") = m2 Then Else For j = 1 To 10 'J列まで sh3.Cells(k, j) = sh2.Cells(i, j) Next j k = k + 1 End If m1 = sh2.Cells(i, "A"): m2 = sh2.Cells(i, "B") Next i End Sub

関連するQ&A

  • EXCEL表操作について

    (1)ある表で A列に数字が入っている行だけを、別の表に出力したい。 別の表にはA列に数字が入った行だけの表ができる。 (2)ある表で A列とB列にはVLOOKUP関数で、読込むスタート位置とエンド位置が記述されているので、それを基に別表にデータ行を追加して行く。 (1)~(2)のような事が、EXCELの表操作でできる方法があればご教授下さい。← マクロ記述となっても可能。 

  • エクセルで同じ数値の行を削除

    エクセルで以下のような1000行位のデータがあります。 A列 B列 大阪 1,001  東京 1,200 高知 1,300 大阪 1,200 なら 1,000 神戸 1,001 これらからB列が同じ数値の行を削除し、以下のように するにはどうしたら良いでしょうか? よろしくお願いします。 A列 B列 東京 1,200 高知 1,300 大阪 1,200 なら 1,000

  • 【Excel】文字の削除方法について

    Excelで1つのセルの中に Alt+Enterで数行に改行された文章が入っています。 だいたい2000行くらいです。 1行目の先頭と末尾は必ず*と決まっています。 この先頭の1行だけ削除したいのですが、何か良い方法はないでしょうか? マクロで1文字づつ確認しながら、2つ目の*が来たら そこまで削除という方法くらいしか思いつきません。

  • エクセルVBAでの行削除

    エクセルで下記のようなデータがあり、最終行は2万くらいです。間に空白行はありません  A    B   C     D 年月日 営業所 担当者名 営業成績  0708  東京   ○山   60 0708  大阪   △川   55 0708  東京   ○山   20 0708  名古屋  □元   60 0708  大阪   ×谷   55 0708  大阪   ×谷   10 0708  九州   ▽尾   45 このデータでB列の値が「大阪」と「東京」以外を行削除 するマクロを作ろうとするのですがうまく行きません。 (実際の営業所は1000くらいあって、必要な営業所数は11だけなのですが) よい方法をご存知でしたら、お教えください。

  • 行一括削除を早く行う、こんな方法できますか。

    マクロによる行削除については、空白行の削除などいろいろな質問と 回答が出ていますが、データ量が多くなると自動化でもかなり時間が かかります。 そこで、ソートにより並べ替えを最初に行い、ある列に、最初に ある言葉や数字が出た行から最終行までを一括削除するマクロなら、 処理時間が早く出来ないかと思いました。 例えは、データA10からZ300で、並べ替えによりH列の最初に 日本という言葉が出たら、その行から最終300行までを一括削除 するという方法です。 (削除は行全体でもAからZまでの行、どちらでもよいです) そんな方法が出来るなら教えて下さい。よろしくお願いいたします。

  • エクセルのマクロでセルの内容によって行を挿入

    エクセルのマクロでこんなことは出来るのでしょうか。   A    B 1 東京  1 2 大阪  3 3 札幌  2 4 福岡  1 5 横浜  2 上記のような表をマクロの処理で下記のように書き換えることは出来るでしょうか。   A    B 1 東京  1 2 大阪  1 3 大阪  1 4 大阪  1 5 札幌  1 6 札幌  1 7 福岡  1 8 横浜  1 9 横浜  1 B列に入ってる数字の分だけ行を作りたいのです。 (B列の数字マイナス1行を挿入する形になります) 書き換えがややこしければ、別の場所に作り直してもかまわないので お願いします。

  • 行を削除するマクロ

    a列には数値が入っています。 2行目から、a列の数値が最大かつ最下の行(この場合は12行目)までを削除するマクロのvbaの構文を教えてください。 削除するのは行全体で、a列だけではありません。 エクセル2010です。 どうぞよろしくお願いします。

  • 行を削除しても番号の変わらない方法

    エクセルで300行の表を作っています。 A列に1行づつ1~300まで番号をつけているのですが、 仮に100番のデータを行ごと削除したあと、 番号が飛ばず、元通りに1~299に 自動で詰めてくれる方法はありますか? よろしくお願いします。

  • Excel2003での行重複削除

     Excel2003で、列のセル内容が同一の場合を削除・抽出することは可能でしょうか。例えば、次のようなイメージです。 行番号 A列 B列 行1 A1県 B1市 行2 A1県 B2市 行3 A1県 B3市 行4 A1県 B4市 行5 A2県 B5市 行6 A2県 B6市  ここから、A列が同一の行の重複を削除したいのです。上記では、行1から行4までは「A1県」で同一なので、1つの行だけ残し後の行は削除したい。B列の内容は重複削除で一部消えますが構いません。上記の場合、抽出結果は次のようになります(先頭行だけ残した場合ですが)。 行番号 A列 B列 行1 A1県 B1市 行5 A2県 B5市  データベースが大きいため、手作業で削除して行くのは大変です。適当な方法がありましたら、是非、ご教示ください。  どうぞ宜しくお願いします。  

  • 行を削除するマクロ2

    a列には0から2の数値が入っています。 2行目から、a列の数値が2かつ最下の行(この画像の場合は12行目)までを削除するマクロのvbaの構文を教えてください。 ただし、a列の数値がすべて2未満の場合、行は削除しないようにしてください。 削除するのは行全体で、a列だけではありません。 エクセル2010です。 どうぞよろしくお願いします。