アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルについての質問です

以下の様なデータが3000くらいまであります。
A1 パソコン 比較
A2 パソコン比較
A3 PC 比較
A4 DELL 比較
A5 IBM 比較
A6 IBM比較

半角スペースと半角スペースがないものも同じものとしてとらえて、スペースがない方を削除したいのですが、上記の例ですとA2とA6になります。

SUBSTITUTE関数で半角スペースを削除して、その後フィルタで「重複するセルを無視する」とやるとできるのですが、このやり方だとA3,A4のような半角スペースが必要なセルまで半角スペースがなくなってしまいます。

これができる関数などはありますでしょうか?
関数を使わなくても、一括で処理できる方法があれば教えてください。
よろしくおねがいします。

A 回答 (5件)

No2の回答の補足と修正です。


内容を見ていただければわかると思いますが、次に優先する列は以下のようにC列となります。

誤:最優先をB列、次に優先する列をB列にして並べ替え、
    ↓
正:最優先をB列、次に優先する列をC列にして並べ替え、
    • good
    • 0

B1セルには次の式を入力し下方にオートフィルドラッグします。



=IF(A1="","",IF(LEN(A1)=LEN(SUBSTITUTE(A1," ","")),10,1))

スペースのないものには10が表示されますのでB列を選択してコピーし、C1セルを選択してから「形式を選択して貼り付け」で「値」にチェックをして貼り付けます。
その後にC列を重点に昇順での並べ替えを行います。10の数値は下方に並びますのでそれらの行を選択して削除します。
B,C列を削除して終了します。
    • good
    • 0
この回答へのお礼

最後が手動になってしまうので、少し面倒ですが、回答ありがとうございました。

お礼日時:2010/03/03 09:45

Fig-1          Fig-2 (Fig-1 を昇順に並べ替え)


     A            A
1 ORIGINAL       1 ORIGINAL
2 パソコン 比較    2 DELL 比較
3 パソコン比較     3 IBM 比較
4 PC 比較       4 IBM比較
5 DELL 比較      5 PC 比較
6 IBM比較       6 パソコン 比較
7 IBM 比較       7 パソコン比較

Fig-3
     A       B     C
1 ORIGINAL    NO_SPACE   DUP
2 DELL 比較   DELL比較    1
3 IBM 比較    IBM比較     1
4 IBM比較    IBM比較     2
5 PC 比較    PC比較     1
6 パソコン 比較 パソコン比較  1
7 パソコン比較  パソコン比較  2

B2: =SUBSTITUTE(A2," ","")
C2: =COUNTIF(B$2:B2,B2)

C列の数値が 2 以上の行を削除
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
思っていたとおりのことが完璧にできました。

こんなシンプルな方法があったなんて思いつきませんでした。

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

お礼日時:2010/03/03 09:43

>SUBSTITUTE関数で半角スペースを削除して、その後フィルタで「重複するセルを無視する」とやるとできるのですが、このやり方だとA3,A4のような半角スペースが必要なセルまで半角スペースがなくなってしまいます。



元のデータがA2セル以下にあり、B2セルに「=SUBSTITUTE(A2," ","")」、C2セルに「=100-LEN(A2)」の式を下方向にオートフィルし、この3つの列で「並べ替え」で、最優先をB列、次に優先する列をB列にして並べ替え、この状態でB列だけを選択し「フィルタオプションの設定」で「重複するデータは無視する」でフィルタすれば、A列のデータがご希望のデータになっています。
    • good
    • 0
この回答へのお礼

やってみたのですが、できませんでした。

お礼日時:2010/03/03 09:45

行削除判定用の作業列を設ける、ではだめですか?

    • good
    • 0

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