• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel VBAでの行の削除について)

Excel VBAで行の削除方法

jcctairaの回答

  • jcctaira
  • ベストアンサー率58% (119/204)
回答No.1

Sub 行削除()  Dim I     As Long  Dim 削除行 As Range  Set 削除行 = Range("A1")  For I = 1 To Cells(Rows.Count, "A").End(xlUp).Row Step 3   Set 削除行 = Union(削除行, Cells(I, "A").Resize(2))  Next I  削除行.EntireRow.Delete End Sub 【処理概要】 削除する行を「削除行」のRange変数に蓄えて、最後に一気に削除します。 【補足説明】 ・Cells(Rows.Count, "A").End(xlUp).Row  入力されている最終行を取得 ・Union(削除行, Cells(I, "A").Resize(2))  2行ずつ「削除行」に範囲を蓄積(A列の行のみ) ・削除行.EntireRow.Delete  A列だけの行を全行に変更(EntireRow)し削除(Delete)  

関連するQ&A

  • エクセルの行削除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

  • excel VBA で”27行目ごとに3行削除”について

    VBAはまったく初めてです。 早急に作業を行わなければいけないことがでてきたのですが、持ち時間がないので、VBAでできないものかと思いました。 マクロの記録をやってみたのですが、うまくいきません。 記述をする場所はわかります。 毎27行目以降3行を削除していきたいのです。 どう記述していけばいいのか、どなたか教えていただけないでしょうか?

  • Excel VBA 1行ずつ実行するには 

    いつもお世話になっています。 Excel VBAで記述したマクロを 1行ずつ確かめながら実行する方法を教えてください。

  • EXCEL VBA マクロ 特定の行削除

    Excelで特定の文字例が含まれるセルが存在する行のみを自動で削除したいのですが、VBAで自動で処理する事は可能でしょうか? 1万行程度あるので、自動で実行したいと思っております。 プログラムの知識がないので、どなたかご教授下さい。

  • エクセル 網掛けしてあるセルの行を残してそれ以外の行を削除するVBA

    windows-xp、エクセル2003を使っています。 エクセルデータがA列からU列まであります。 (1000件程かな、時々AA列まである時もあります) G列には、網掛けしてあるセルがあります。 そこで!! 網掛けしてあるセルの行だけを残して、網掛けがされていない行のデータを一気に削除する!というマクロ(VBA)を作りたいのですが、どうすればよいでしょうか? VBAまだ、よくわかっていないので、初心者レベルでわかりやすく教えてくださると助かります。 宜しくお願い致しますm(_ _)m

  • 行を削除するマクロ

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

  • エクセルVBA 不要行の削除について

    皆さんこんにちは。 お忙しいところ恐れ入ります。 以下の内容をVBAで実行したく色々やってみたのですが、思うように動きません。 もしお分かりになる方がおられましたらご教示の程ねがえませんでしょうか? 1.A列に”無作為な数値(例えば1から100)”と”空セル”がランダムに並んでいる。 2.このA列に、指定した数値(例えば3,7,15,23,50,88など色々)があった場合、  その指定した数値が書かれている行のみを行ごと削除したい。 以上です。 お忙しいところ恐れ入りますが、どうぞよろしくお願いいたします。

  • エクセル VBAにて行削除をしたい…

    エクセル2003にて VBA初心者です。 A列1~100に101~200までに番号が振ってあります。 Z列に記入がない場合はその行を削除するVBAを教えてください。 例  A  B  C  D  E  F …… Z 1  101               文字有り 2  102               ブランク 3  103               ブランク 4  104               文字有り 5  105               文字有り … 99  199              文字有り 100  200              ブランク この様な場合2,3,100の行ごと削除をするという形式のものです。 また、この場合A列の番号も自動で変われば(104が102になる等)最高です。 詳しい方教えてください。よろしくお願いします。

  • 行を削除するマクロ2

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

  • VBA アクティブ行の削除

    エクセルで、アクティブにしているセルの行のA列からL列のみを削除というマクロを組みたいのですが、どのように記述したらいいのでしょうか? アクティブなセルはA列~L列のどこにあっても、その行のA列-L列を削除というようにしたいです。 (例1) A1がアクティブだった場合、A1~L1が削除される (例2) B4がアクティブだった場合、A4~L4が削除される すみませんが、お分かりになる方がいましたらよろしくお願いいたします。