• ベストアンサー

特定の名前の行を削除するには?

VBA初心者なので、よろしくお願いします。 品名  データ1  データ2  ・・・・ 砂糖   123    456 塩     789    123 粉     456    789 ・・・・ このような表で、特定の品名(例えば塩)の行を削除するにはどうすれば良いのでしょうか? 塩がどの行にあるのかは定かでありません。また、無いかもしれません。 以上、よろしくお願いします。

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

  • ベストアンサー
  • myRange
  • ベストアンサー率71% (339/472)
回答No.3

品名はA列として。 塩が、ひとつしかない、または、全然ない、場合。 '------------------------------------------------ Sub Test()  Dim R As Long  For R = Cells(Rows.Count, "A").End(xlUp).Row To 2 Step -1    If Cells(R, "A").Value = "塩" Then      Rows(R).Delete xlUp      Exit Sub  '●●    End If  Next R End Sub '--------------------------------------- 塩、が複数あるか、全然ない場合は、 上記●●のコードを削除する。 '------------------------------------------------------ ■Findメソッドを使った場合。 '------------------------------------------------------ Sub Test()  Dim myCell As Range    Set myCell = Range("A:A").Find("塩", , xlValues, xlWhole)    If Not myCell Is Nothing Then      myCell.EntireRow.Delete xlUp    End If End Sub '----------------------------------------------------- このFindメソッドの例は、 ”塩”が、ひとつ、又は、全然ない、場合の例です。 検査値(塩)が複数ある場合はも少し複雑なコードなります。 以上です。

0pus0ne
質問者

お礼

検査値は2つありませんので、Findメソッドを使った場合で出来ました。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • zongai
  • ベストアンサー率31% (470/1474)
回答No.2

MS Officeカテゴリですが、Excel、Word、Accessなどでも表を扱えます。 お使いになられているのは?バージョンは?

全文を見る
すると、全ての回答が全文表示されます。
  • zongai
  • ベストアンサー率31% (470/1474)
回答No.1

対象とするデータがExcel? Excelなら、「品名」のセルを選択し、オートフィルタを実行。 「塩」だけを表示させ行削除。 オートフィルタを解除。 これだけでいいと思います。 これをVBAでやりたいということ?

0pus0ne
質問者

お礼

ご回答、ありがとうございます。 すいません。削除させた後の計算もあるので、マクロでやりたいのです。 よろしくお願いします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 特定行の削除

    100行のデータがあり、その中から、10行目から20行目までを削除 したいとします。 この場合、左の行ボタンを10行目から20行目までシフトクリックで 選択し、削除、としているのですが、これが例えば、1000行ある データの、100から200行とかいうことになってくると、シフトクリック ではちょっとしんどいです。 他に特定の行を選択し、削除する簡単な方法はないでしょうか?

  • VBA 21行目~表の最終行まで行削除

    WinXPでExcel2003を使用しています。 VBAで、21行目から表の最終行までの行削除するマクロを作りたいのですが、上手くいきません。 Sub 行削除() Range("A21").CurrentRegion.Select Selection.Delete End Sub だとその上下に文字が入ったセルがあると一緒に削除されてしまうので、 どの様にすればいいのか分からないでいます。 最終行を何行目と特定せずに表の最終行を取得して、 削除範囲を設定出来るものが希望です。 どなたか教えて下さると助かります。 よろしくお願い致します。

  • VBA 特定の行を別シートへコピー・削除

    下記のように、VBAで特定の行を抽出して別シートへコピーし、コピーした行については元リストデータを削除したいです。 具体的には、【出荷sheet】(C列注文番号は、出荷があった時に入力済)へ、注文番号に対応する行を【リストsheet】から抜き出してコピーし、コピー後は、【リストsheet】から該当行を削除したいです。 検索により調べてもうまく合致する回答が見当たらず困っています。 VBAの理解度は未熟ですが、何卒ご教授いただけると幸いです。 【リストsheet】 A列 B列  C列   D列 ・ ・ ・ J列 No. 日付 注文番号  品名 ・ ・ ・ ・ 1  1/1   A111   鉛筆  ・ ・ ・ ・ ←コピー後、削除  2   1/2   B222   ペン  ・ ・ ・ ・ 3    1/5  C555 消しゴム・ ・ ・ ・ ←コピー後、削除  ・ ・   ⇓ 【出荷Sheet】 A列 B列  C列   D列 ・ ・ ・ J列 No. 日付 注文番号  品名 ・ ・ ・ ・ 1  1/1 A111   鉛筆   ・ ・ ・ ・ 3   1/5   C555 消しゴム・ ・ ・ ・

  • エクセルで特定の文字が含まれる行から特定の文字が含まれる行の削除方法

    エクセルで特定の文字が含まれる行から特定の文字が含まれる行の削除方法 表題のとおりですが、エクセルで特定の文字が含まれる行から特定の文字が含まれる行の削除方法について教えてください。 特定の文字(C列にあります)が含まれている行から5行下の先ほどとは違う文字(これもC列にあります)までを削除したいのです。 それがたくさんあり大変困っております。 エクセルを起動してマクロの記録を行い手作業で5回削除し記録終了としたのですが、 5回以上削除したい場合は操作が行われませんでした。 これをマクロで行うにはどういう式を作ればいいでしょうか? 宜しくお願いします。

  • 特定の文字を含むものだけ削除

    VBAを調べて勉強中です。 先日から何度ためしても動いてくれないVBAがあります。 教えてください。 ある、特定の文字を仮に「山」とします。 もう1つの特定文字は「川」とします。 もし、山、川両方があれば削除はしたくないです。 そして、もし、「山」だけがあればその行は削除です。 山を含む行が2行続いたりすると、上の方は削除対象に なるけども、下の行は削除されないままということがあります。 その場合、どのようなVBAで対処しようか考えたとき、 lRow = Cells(Rows.Count, 1).End(xlUp).Rowというのが ある、とネットで知りました。 しかし、変数を設定しないといけなかったりもし(すでに、 行をあらわすものとして変数iを使用しています)、うまく 作成できず、どの行も全く削除されない状況となりました。 アドバイスを頂けると助かります。

  • 最終行から指定行までの削除

    VBAで、表のB列の最終行からB列の91行目までの行削除するマクロを作りたいのですが、うまくいきません。

  • VBAの行削除について

    VBAで行を削除したいです。 データが何百行かあって、その下から空白行が最終行までできています。 その空白行部分を削除したいのですが。 どのようにコーディングすればいいのですか?

  • エクセルVBAで特定の文字を含まない行を削除する

    エクセルVBAで特定の文字列(たとえば” りんご ”)を含まない行を削除するものを作成したいです。 ” りんご ”がB列だけにしかない場合は作成できたのですが、 ” りんご ”がB列とC列にも含まれていて どちらかに含まれていたら、その行を残して、それ以外の行を削除したい場合にはどうしたらいいのかわかりませんでした。 教えてください。 

  • エクセルで特定の行を削除したいのですが。

    エクセルで特定の行を一発で削除したいのですが、やり方がわかりません。 どなたか詳しい方お教えいただけませんでしょうか? やりたいことは、B列に、特定の文字が有れば、その行全部を削除して上方向にシフトしていきたいのですが、マクロとかを使うのでしょうか? 宜しくお願いいたします。

  • エクセルで30万行から特定の行を削除したいのですが。

    エクセルで30万行から特定の行を一発で削除したいのですが、やり方がわかりません。 どなたか詳しい方お教えいただけませんでしょうか? やりたいことは、B列に、特定の文字が有れば、その行全部を削除して上方向にシフトしていきたいのですが、マクロを使うのでしょうか? また、マクロを使う場合、どの位時間がかかりますでしょうか?行数が30万行ありますので。(PCのスペックは、Core2Duo 1.40GHz/メモリ3GBです) 宜しくお願いいたします。

職場でのモヤモヤについて
このQ&Aのポイント
  • 職場で1ヶ月前に入ってきた同僚からの言葉にモヤモヤ
  • 他の派遣社員が女性特有の方法を使って仕事を取っていることに不安
  • 休みの日も悩んでしまう原因は自分の考え方にあるかもしれない
回答を見る

専門家に質問してみよう