• 締切済み

エクセルで不要な行を一括削除できますか?

いつもお世話になります。 OSはWINのXP。オフィスもXPを使用 しております。 セルのA-1に「あ」 セルのB-1に「い」といったデータが羅列されて います。(行の2~) このデータをセルC-1に&を使って 「あい」という形式のデータに変えたのですが、 1行飛ばしで不要なデータも入ってしまいます。 不要なデータを、すべて空白にしたいのですが 何か関数で簡単に出来ないモノでしょうか? 今は1行飛ばしでctlで複数選択して 削除しているのですが。。。。

みんなの回答

回答No.5

不要なデータだけを削除するのですか、それとも不要なデータの入った行ごと削除するのですか。 (1)不要なデータだけを削除する場合で、そのデータだけを空白に置き換える。 例えば不要なデータにだけrという文字がはいっている場合検索する文字列を*r*とし置換える文字列を空白とすれば不要データはすべて空白と成ります。ただし空白としたくないセルのデータにも同じ文字があれば当然同時に空白となります。また行は削除されません。 (2)データの入力していない列に削除したいデータのある行だけに共通する数字を入れます。 例えば1行おきに削除したいデータがある時は1.2.1.2・・というように、3行ごとにある場合は1,2,3,1,2,3・・・というように数字をいれ、先頭行に「データ」「フィルタ」「オートフィルタ」を設定し、数字をいれた列のフィルタで削除したいデータだけを表示できます。 こうすれば、削除したいデータのみ、またはその行も一緒に削除できます。

snoopykun
質問者

お礼

お礼が遅くなりました。 参考にします。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

こんな風にやって見ました。シートを1枚挿入します。 または使っていないシートを使います。このシート名をSheet2とします。 もとデータがSheet1にあるとします。 Sheet2のA1に =IF(MOD(ROW(),2)=0," ",Sheet1!A1) と入れます。A1の式をA列方向に複写します。 A1の式をB1から右にデータの終わる列まで複写します。 A1:○1を下方向にデータの終わる行まで複写します。 1行おきに飛び飛びに残ります。 後は値の複写でSheet2の式を全部消してください。

snoopykun
質問者

お礼

お礼が遅くなりました。 参考にします。 ありがとうございました。

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

質問の意味が良くわかりませんが 1行とびに削除するだけなら 1.作業用の列を2列作成  (1)左端に2列挿入する 2.今の並び順を登録する  (1)a列に1からの番号を割り振る     1,2,3,4,5・・・ 3.削除するか残すかの識別コードをつける  (1)b列に識別番号を入力   ・1行目に「0」   ・2行目に「1」など  (2)そのセル(0と1)を対象の行までコピー。 4.b列でデータを並べ替える。 5.削除するデータが集約されます。  たとえばb列が「0」なら  その範囲を一括で範囲指定して、行ごと削除。 6.a列でデータを並び替える。 7.a列を削除すれば、元通り。 てな感じでどうでしょーか。

snoopykun
質問者

お礼

お礼が遅くなりました。 参考にします。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.2

この内容から推測すると、「データ範囲を1行おきに(3行目~)クリアしたい」 というように解釈しました。 確認ですが、完全に「1行おき」ですね。 もし、そうであれば、次のようなマクロを実行すると瞬時にクリアされます。 一応、詳しく操作手順を書きますので、バックアップを取った上でテストして みてください。 【 操作手順 】(ご存知でしたら読み飛ばしてください。) 1.Alt + F11 で VBE(Visual Basic Editor)を開きます。 2.VBE のメニューから[挿入] -->[標準モジュール] を指定します。 3.モジュールウィンドウに下記コード(10行)をコピーして貼り付けます。   (Option Explicitがあればその下付近に) 4.必要により、2~3行目の指定値を変更します。 5.Alt + Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。 6.実行するときは、Alt + F8 (メニューから[ツール]-->[マクロ]-->[マクロ])で  「隔行クリア」を指定し、[実行]ボタンを押します。 Sub 隔行クリア() Const Kisuu_Gusuu = 1 ' <--- 奇数行クリア=1 , 偶数行クリア=0 Const DataTopRow = 2 ' <--- データのトップ行を指定 Dim Row As Long For Row = DataTopRow To Range("A65536").End(xlUp).Row + 1   If Row Mod 2 = Kisuu_Gusuu Then     Rows(Row).ClearContents   End If Next Row End Sub 趣旨が違うようでしたら、詳しい状況の補足が必要と思います。

snoopykun
質問者

お礼

お礼が遅くなりました。 参考にします。 ありがとうございました。

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

こんにちは。maruru01です。 Excelでは、「A、B、C」というのは列番号です。 したがって質問の通りだと、 A1に「あ」 その"右隣"のB1に「い」 さらにその"右隣"のC1に「=A1 & B1」(「あい」) ということになり、 >1行飛ばしで不要なデータも入ってしまいます。 の意味がわかりません。 どういう表になっているのでしょうか。

snoopykun
質問者

お礼

お礼が遅くなりました。 参考にします。 ありがとうございました。

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

関連するQ&A

  • Excelで空白行を削除したい

    2500行位使用しているシートのなかに、どのセルも空白になっている不要な行が300行くらい混ざっています。 この行を自動的に削除するにはどうすれば良いでしょうか。 ただ、その行のA~Eセルは空白でもFセルに値が入っているなど完全に空白でない行は削除できません。 メニュー、関数、VBAなど有れば教えてください。

  • Excel 空白行を上に詰めるマクロ

    関数を使用して、sheet1からsheet2に必要なデータを抜き取りました。 sheet2のセルには関数が入っています。 sheet2の抽出データには1行単位(まれに2~3行続けて)空白が発生します。 この行を削除し、かつ上に詰めて表示をしたいのですが、下記の条件で実行可能でしょうか? (例) sheet1 ⇒ sheet2   A   B   C     A  B  C 1 あ  い  う   1 あ  い  か 2        か   2 (空白行) 3 き  く   け    3 き  く  し   4 こ  さ   し   4 (空白行) ●2行目、4行目を削除し、且つ5行目以降に入力されている関数は削除したくない ●空白行削除のマクロは自動?(sheet1のデータを変更したら)で実行できるようにしたい よろしくお願いします。

  • Excel テーブル内の空白行の削除について

    テーブルの任意の行のデータを削除し、空白削除ボタン(cmd_Blank)をクリックすると削除したデータ行(空白行)を削除するVBAを作ったのですが空白行が1つの場合は問題なく動作するのですが(添付左)、 ・空白セルがあるとその行がすべて削除されてしまう(添付中央)。 ・空白行が2つ以上あるとエラーになってしまう(添付右) という問題に悩んでいます。 空白削除ボタンクリック時のコードは Private Sub cmdBlank_Click() ActiveSheet.ListObjects("T住所").DataBodyRange.SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub になります。 添付の図がわかりにくいかと思いますが、ボタンクリックすると テーブル内の空白行があったら、その行のみ削除され、上詰めに したいということです。 どなたか教えていただきたいです。

  • エクセルで行の削除

    セルA3からセルR5000までデータが入っています。 データー量を減らすため4行目、6行目と一行おきに削除したいのですが、一気に削除する方法はありませんか。 宜しくお願いします。

  • 色つき行の一括削除は?

    色のついた行を一括削除する方法はありませんか? また列が複数にわたる場合の、空白を一括削除する方法も教えてください!

  • エクセルで空白行を挿入するには

    一つの列に200ほどデータがあるとします。 そこで1行おきに空白行を挿入していきたいのですが手でいちいち空白行を挿入していてはらちがあきません。 関数等も含めて、なにか良い方法はないでしょうか。 例 セルA1   セルA2   セルA3 以下続く    ↓   セルA1   空白行(セル)   セルA2   空白行(セル)   セルA3   空白行(セル) 以下続く   といった具合です。

  • エクセル 行の挿入について

    EXCEL2002を使用しています。 行を挿入しようとしましたら、次のようなエラーメッセージがでました。 『データの消失を防ぐため、空白でないセルをワークシートの外にシフトすることはできません。 Ctrl+Endキーを押して最後の空白でないセルに移動し、そのセルとデータを削除、またはクリアしてください。 その後、セルA1を選択し、ブックを保存して最後のセルをリセットしてください。 または、データを新しい位置に移動し、もう一度行ってください』と。 データを入力した後、入力漏れに気がついたので、行の途中に入力漏れしたデータを挿入したいのですが、どのようにすれば、行の挿入ができるでしょうか。 (例えば、1行目から100行目までデータを入力した後に、10行目に新たにデータを挿入したい場合) よろしくご教示願います。 なお、OSはウィンドウズXPです。

  • 空白行のみ一括削除≪Excel≫

    データ(ひらがな)が入っている行と、空白の行が混在しています。 空白行のみ削除し、ギュっと行を縮めたいのですが良い方法は無いでしょうか? 項番を振り、並び替え後削除し、再び項順に並べ直してみましたが 時間がかかって仕方ありません。 良い方法をご存知の方、ご教授下さい。

  • 空白セルのある行を削除する関数をご教示下さい。

    空白セルのある行を削除する関数をご教示下さい。 ただし、条件付で、特定の列の空白セルに該当する行しか削除しない という条件付の関数を作成したいと考えています。 文章だけでは分かりにくいため、図を添付します。 エクセルに詳しい皆様の回答を心よりお待ちしています。

  • 空白のセルを行削除する。EXCELマクロなのですが・・

    VBA初心者です。 データーをHPから、単純にコピーしてきて、 EXCELに貼り付けています。 フィルターをかけても、画像かなにかがセルに張り付いているのか、 空白行をすべて削除できません。 いろいろ試して(HPから、空白セルの行削除について書かれてあるマクロを貼り付けて)動いたのが、このVBAです。 しかし、遅いので、早いVBAに簡略できればいいのですが。。 大体、1000行ぐらいの文字を貼り付けて、3/1ぐらいが空白行です。A行のセルの空白のみを、削除したいのですが。  まったくの素人なので、わかりません。 どうかよろしくお願いいたします。 Sub 空白の削除() x% = Worksheets("sheet1").Range("A65536").End(xlUp).Row For i = x% To 1 Step -1 If Worksheets("sheet1").Cells(i, 1).Value = "" Then Worksheets("sheet1").Rows(i).Delete Next End Sub

専門家に質問してみよう