- 締切済み
エクセルの空白の行を削除する方法
例えば 1行目 ああああ 2行目 3行目 いいいい 4行目 5行目 6行目 うううう のように、2行目と4行目と5行目のように空白になっている 行を一気に削除する関数か何か方法があれば教えてくださいませ!
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! すでに回答は出ていますので、参考程度で・・・ VBAでの一例です。 データはA列にあるものとします。 画面左下にある操作したいSheet見出し上で右クリック → コードの表示 → VBE画面が出ますので ↓のコードをコピー&ペーストしてマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です。) Sub test() 'この行から Dim i As Long For i = Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1 If Cells(i, 1) = "" Then Rows(i).Delete (xlUp) End If Next i End Sub 'この行まで 尚、一旦マクロを実行すると元に戻せませんので 別Sheetにコピー&ペーストしてマクロを試してみてください。m(__)m
- imogasi
- ベストアンサー率27% (4737/17069)
またエクセルで関数しか知らないからか、関数でなんてほうに意識が行っている。 すでに答えは出ているが、操作で出来るものをなぜ関数でやるのか。 エクセルでは (1)操作 (2)関数 (3)VBA (4)エクセルで使える特別ソフト(この中には、直ちに使えるピボットなども含む) エクセルは第1義的に「操作で使う」ソフトです。 >行を一気に削除する関数 それにエクセルの関数の本質が判ってない。関数はセルの値を決められるだけで、行の挿入や削除、行高の設定、セル結合など、セルの体裁などを変えることは原理的に出来ないようになっている。 だから関数でやると、別シートにでも別途、空白で無い行を抜き出す、ようなものにならざるを得ない。 例データ Sheet1 A2からデータ A列 B列(作業列) ああああ 1 1 いいいい 2 2 2 うううう 3 ええ 4 B2の式は =COUNTA($A$2:A2) Sheet2において A2セルに =INDEX(Sheet1!$A$2:$A$100,MATCH(ROW()-1,Sheet1!$B$2:$B$100,0)) 下方向に式複写 ああああ いいいい うううう ええ #N/Aを出さない関数は =IF(ROW()-1>COUNTA(Sheet1!$A$1:$A$100),"",INDEX(Sheet1!$A$2:$A$100,MATCH(ROW()-1,Sheet1!$B$2:$B$100,0))) 他のやり方を知りたければ、Googleで「imogasi方式」で検索し、抜き出しの質問が数百出るが、私以外の回答を参考にすること。
Excel 2002 における手順は次のとおり。 1.当該列選択 2.[編集]→[ジャンプ]→[セル選択] 3.“空白セル”に目玉を入れて[OK]をクリック 4.[編集]→[削除] 5.“上方向にシフト”に目玉を入れて[OK]をクリック
- okky0707
- ベストアンサー率22% (34/154)
関数ではありませんが、 (1)対象の行を選択(例で言うと1~6行目) (2)一番上の段にあるプルダウンメニューの[データ]-[フィルタ]-[オートフィルタ]をクリックする (3)1行目に下向きの三角形のボタンが出てくるので、それを押すと出てくるプルダウンメニューの (空白セル)を選択する (4)空白の行だけが表示されるので行を選択して右クリックで[削除]を選択 (5)(3)のボタンをもう一度押しメニューから(すべて)を選択する これで空白行だけを一気に消せます。