個人事業主の方必見!確定申告のお悩み解決

以下のように,不要なデータがaaaaaとbbbbbにはさまれています。
必要データと書いてある部分が残したい部分です。
(できれば,aaaaaもbbbbbも消したい)
aaaaaとbbbbbは1行ですが,
不要データも必要データも,行数は一定ではありません。
何かいい方法はないでしょうか。

aaaaa
不要なデータ
不要なデータ
bbbbb
必要データ
必要データ
必要データ
aaaaa
不要なデータ
bbbbb
必要データ
aaaaa
不要なデータ
不要なデータ
不要なデータ
bbbbb

このQ&Aに関連する最新のQ&A

A 回答 (7件)

こんばんは!


横からお邪魔します。

VBAになってしまいますが、一例です。
データはA1セルからA列にあるとします。

画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に
↓のコードをコピー&ペーストしてマクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)

Sub test() 'この行から
Dim i As Long, k As Long
For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
If Cells(i, 1) = "bbbbb" Then
k = i
Do Until Cells(k, 1) = "aaaaa"
k = k - 1
Loop
Rows(k + 1 & ":" & i).Delete
End If
If Cells(i, 1) = "aaaaa" Or Cells(i, 1) = "bbbbb" Then
Rows(i).Delete
End If
Next i
End Sub 'この行まで

※ 一旦マクロを実行すると元に戻せませんので、別Sheetでマクロを試してみてください。

参考になりますかね?m(_ _)m
    • good
    • 0
この回答へのお礼

大変助かりました。
ばっちり動きました。

途中まで組んで,どうしようもなくなっていたので,大変嬉しいです。
教えていただいたマクロ,これから勉強して理解しようと思います。

どうもありがとうございました。

お礼日時:2012/08/16 21:52

関数とオートフィルタで対応するなら、bbbbbの次のセルからaaaaaが出るまでのセルの横の列(B2セル以下)に「必要」と表示する以下のような数式が計算負荷が少ないのでお勧めです。



=IF(AND(OR(A1="bbbbb",B1="必要"),A2<>"aaaaa"),"必要","")
「Excel2007 不要データを消したい」の回答画像7
    • good
    • 0
この回答へのお礼

やってみましたが,確かに軽かったです。

ifとand,orの組み合わせは考えてみたのですが,うまくいきませんでした。
できあがったのを見ると簡単に見えますが,自分でやると難しいものです。

しっかり勉強しようと思います。
どうもありがとうございました。

お礼日時:2012/08/16 21:56

B1に式 =IF(A1="aaaaa","",IF(A1="bbbbb","",1))  と入力します


B1を最終行までコピーします

B列を選択しデータ →フィルター →オートフィルター設定します
B1のフィルターリストをクリックし 1を選択すると不要行のみ表示
されるのでB列に 1のついた行を選択して削除します
データを残す場合は 表示しない 設定をします
    • good
    • 0
この回答へのお礼

確かに,こうすれば簡単にできますね。
手軽に行うには,とても便利だと思いました。

どうもありがとうございました。

お礼日時:2012/08/16 22:00

>実際は数千行あるので,



回答した数式は、数千行程度でしたら持ちこたえます。いったいどんな操作をしてるんですか。
B2に式を記入したら、ふつーにB2セルの右下の小さい■をWクリックしてオートフィルさせてください。40秒ほど待つかもしれないので、お茶でも入れて一服しててください。


#数万行とかだとちょっと厳しいかもですけどね。
時折、無駄にいきなりシートの下端まで数式をぶっこんで勝手に自爆してる人もいるんで。


どーしてもできないなら、まず500行オートフィルドラッグして一旦安定するまで待ち、次はその500行ずつコピーしては貼り付けてください。
    • good
    • 0
この回答へのお礼

いろいろいじった状態だったので,リソース不足を起こしたようです。
エクセルに怒られてしまいました。

再起動したら,うまくいきました。
どうもありがとうございました。

お礼日時:2012/08/16 21:50

こんばんは。


>aaaaaもbbbbbも消したい なら
はじめに aaaaa セルをクリックする。
あとはCtrlキーを押しながら消したいデータを選択する。
最後に任意の選択したセル上で右クリックして削除を選択する。

データの数がいくつあるかわかりませんが、あまりに多いならVBAで削除マクロを作るしかないかと。
    • good
    • 0
この回答へのお礼

どうもありがとうございます。

数千行なるので,とてもctrlで選択することはできません。
マクロは覚え立てなので,とても自分でつくることはできず,
webを検索しているところです。

お礼日時:2012/08/16 20:03

A1に「データ」と記入し、A2以下に実際のデータを記入。


B1に「判断結果」と記入、
B2に
=IF(COUNTIF($A$1:A1,"aaaaa")=COUNTIF($A$2:A2,"bbbbb")+1,"不要","")
と記入、以下コピー

オートフィルタを取り付けて「不要」を絞り出し、全体を選んで
○Deleteキーで削除します
○右クリックして「削除」して上に詰めます
「Excel2007 不要データを消したい」の回答画像2

この回答への補足

A2セルをaaaaaにしたらうまくいきました。
実データはA2がbbbbbでした,大変失礼いたしました。

ただ,100行くらいでやったら成功したのですが,実際は数千行あるので,
ハングアップしてしまいました・・・

補足日時:2012/08/16 20:48
    • good
    • 0
この回答へのお礼

どうもありがとうございます。

おっしゃる通りにやったつもりなんですが,
B2以下の判定するセルがすべて真っ白になりました。

お礼日時:2012/08/16 20:00

その1


 並べ替えをしてから、それぞれまとめて削除。

その2
 不要なデータを示すマークをどこかの列に作って、そのマークがある行だけを「オートフィルタ」で表示させる。
 続いて Ctrl+G で「ジャンプ」を呼び出し「セルを選択」から
 「アクティブ セル領域」を選んで、今 表示されているセル(行)を選択した後
 思う存分削除する。

好きなほうを選んでください。
    • good
    • 0
この回答へのお礼

ご連絡,ありがとうございます。

その1
aaaaaやbbbbbや1行しかないですが,必要なデータも不要なデータも何行あるか分からないので,
並べ替えをするのは難しい気がします。


その2
不要なデータを示すマークをいれようにも,大量にあるので手作業で入れるのは困難です。

お礼日時:2012/08/16 19:26

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング