エクセル重複表示の適用除外方法

このQ&Aのポイント
  • エクセルで重複する数字または文字を抽出する式を作成しましたが、参照するセルがブランクの場合は適用除外し、表示させないようにしたいです。
  • 特定のセルが重複している場合に「重複」と表示する式を作成しましたが、セルがブランクの場合は表示させずに、そのままブランクのままにしたいです。
  • エクセルのデータ作成で、重複する数字または文字を抽出する式を作成しましたが、ブランクのセルには適用せずに、表示させないようにしたいです。
回答を見る
  • ベストアンサー

エクセル重複表示の適用除外方法

こんにちは。 質問させていただきます。 エクセルのデータ作成で、重複する数字または文字を抽出し、「重複」と表示される式をつくったのですが、参照するセルがブランクの場合は適用除外とし、そのまま何も表示させない状態(ブランク)にしたいです。 例えば、A1のセルが「10」、A2のセルが「10」、A3のセルがブランク、A4のセルがブランク、A5のセルが「11」とし、B1~5に以下の式を入れると、A1~4全てが重複表示されます。 =IF(COUNTIF($A$1:$A$5,A1)>1,"重複","") これを各セルがブランクの場合は「重複」表示させないで、ブランクのままにしたいのですが、どのように式を組めばいいのでしょうか? わかる方がいましたら教えていただければ幸いです。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

ANo1です スペースがどのような形で何のために入るかによって計算式が変わりますが、一例として式を書いてみました。 下記式は、半角または全角のスペースがあると、「重複」を表示しないようにしたものです。 ただし、スペースと文字の両方が入っているセルも表示されません。 =IF(COUNTIF($A$1:$A$10,A10)>1,IF(ISERROR(FIND(" ",A10)),IF(ISERROR(FIND(" ",A10)),"重複",""),""),"") 上記式で最初の FIND(" ",A10), は半角スペース、後ろは全角スペースが、文字列の中の何番目にあるかを計算します。従い、複数文字の中にスペースがあるかないかを調べます。 スペースがない場合、エラーになりますから、ISERROR でエラーであるかどうかを判定します。 エラーになる場合は、スペースがないわけですから、「重複」を表示します。 スペースが入るセルは、スペースだけと断定できれば、もう少し簡単になります。 IF式は、 IF(論理式、[真の値]、[偽の値]) ですが、[真の値]、[偽の値] それぞれ IF 文を入れ子にすることができますので、それを活用しています。 

goo41141141
質問者

お礼

ありがとうございます!理想的な形になりました!

その他の回答 (1)

回答No.1

試してみました。 A3,A4に何も入力しないと、「重複」は表示されませんでした A3,A4にスペースを入力すると「重複」が表示されました。 スペースは、画面上ブランクと区別できませんが、Excelでは、文字と認識されています。 スペースは、Excelでは文字として扱われています。 これと現象違いますか?

goo41141141
質問者

補足

ご回答ありがとうございます。 なるほど、確かにスペースを入力すると画面上はブランクで表示させることができますね。 ただ、複数のデータを扱っているので、例えば、A1に半角スペース、A2に全角スペース、A3に半角スペースを入力すると、A1とA3で重複表示されてしまいますが、画面上これを避けていきたいのです。 やはりそれぞれのセルに何か違う文字を入力しないと避けられないでしょうか? よろしくお願いいたします。

関連するQ&A

  • IF文の重複の表示

    A列には数字が入力されています。重複している場合は =IF(COUNTIF(A:A,A2)>1,"重複","") となるようにしました。ここまではわかったのですが A列に数字以外で”なし”と表示する場合があり、 上記プラスアルファ、A列になしがあって重複している場合は 重複と表示したくないのですが、関数で作成できるものなのか できるとしたらどのようにすればよいのか教えてください。 宜しくお願いいたします。

  • エクセルでデータの「どこで重複か」を見つける

    エクセルでデータが「どこで重複しているか」を見つける方法として 以前質問した際に教えていただいたのが B1セルに次の式を入力して下方にオートフィルドラッグします。 =IF(A1="","",IF(COUNTIF(A$1:A1,A1)<=1,"","重複No."&COUNT(A$1:A1,A1))) これで重複があれば上の行から数えてその行のA列に有るデータが何番目の重複であるかがB列に表示されます。 ということでしたがこれには漏れがありました。 =IF(A1="","",IF(COUNTIF(A:A,A1)<=1,"","重複No."&COUNT(A:A,A1))) とすると漏れはありませんが、No.はすべて「0」となるのです。 何番目の重複かが分かる方法はありませんか。

  • エクセル■別シートの重複チェックと条件付書式の反映

    ご覧くださいましてありがとうございます。 早速ですが質問させていただきます。 シート1のA1~A10に数字を入力し、重複していても大丈夫な数字には B1~B10のセルに●を入れて除外できるようにしています。    A  B 1  15  ● 2  26     ←重複してはいけない数字 3  8 4  15  ● 5  7 6  26     ←重複してはいけない数字 A1に、条件付書式で 「 =AND(COUNTIF(A:A,A1)>1,IF(B1="",1)) 」と入れ A列で数字が重複していて、且つBに●のついていない数字のセルを赤色になるようにしました。 (ここまでは問題なくできております) 続いてシート2で、1~30までのビンゴのような表を作りました。    A  B  C  D  E 1  1   2   3   4   5 2  6   7   8   9  10 3  11  12  13  14  15 4  16  17  18  19  20 5  21  22  23  24  25 6  26  27  28  29  30 このビンゴ表に、シート1を反映させたいのですが 『シート1で重複しても大丈夫となっている数字のセルは灰色』 『重複してはいけない数字のセルは赤』 『重複していない数字のセルは灰色』 『使われていない数字のセルは白』 という条件付書式の設定はできないでしょうか? 特に1番目の設定に悩まされています。 質問文が分かりづらかったら申し訳ありません。 お手数をおかけ致しますが、何卒よろしくお願いします。

  • EXCEL重複データのチェックがうまくいきません

    重複データを調べたいのですがうまくいきません。 どこが間違っているのか教えてください。 またもっと簡単な方法があれば教えてください。 A2「20060130」 B2「20060228」 C2「19010130」 I2には「=A2&B2&C2」で【200601302006022819010130】 という数字が入っています。 こういうデータが1000件ほどあります。 =IF(COUNTIF($I$2:$I$1000,I2)>1,"*","") 過去ログで調べて、上記の式をJ2に入れて 重複チェックをしようとしたのですが、下3ケタが 違っていても重複と判断されてしまうのです。 200601302006022819010130 200601302006022819010210  ←下3ケタが違うので重複ではないのです。 宜しくお願いいたします。

  • 文字列を指定して重複チェックするには?

    どなたかおしえてください。 データベースで重複データのチェックを行う場合に、 下記の関数を使用しています。↓ =IF(COUNTIF($A$2:$A$10,A2)>1,"◎","") で、この抽出条件に、A2のセルの左から3文字までに合致すれば ◎と、条件指定したいのですが、 どのようにすればよいのでしょうか?

  • EXCELのIF式の足し方

    お世話になります。 あるセルの数字が0の場合に別のセルを参照させて、 数字が入っている場合にそのまま参照させる式を つくりました。 IF(A11=0,B11,A11) ←こんな感じ。 それをすべて足したい場合に簡単にできる方法があります でしょうか? ※参照したい数字は、同じ行にあります。 今は=SUM(IF(A11=0,B11,A11)+IF(A12=0,B12,A12)+・・・・) 見たいな感じで逃げているのですが、増えてくると計算式を作る のも一苦労なので・・・・ 宜しくお願い致します。

  • エクセル:表示が途切れないようにしたい

    例えば、A1のセルに「abcdefghijklmnopqrstuvwxyz」と入力します。 B1のセルは、IF文を「=if(A2=1,"ok","")」と入れます。 A2セルが「1」のときはB1に「ok」が表示され、A1の表示は途中で途切れますよね。(「abcdefg」くらいまでしか表示されない) 1以外の数字を入れたときは、A1の表示が途中で途切れないようにしたいのに、B1が空白表示なのに途切れてしまいます。判断式がfalseのときに途切れないよい方法はないでしょうか。 1.マクロは使いたくありません。 2.1つの方法として、False時の""の代わりに"aaaa"と入力し、   A1とB1を別のセルに「形式を選択してコピー」で「値」だけコピーし、そのコピー先のセルを"aaaa"⇒ブランクに「置換」すればできます。ただ、この方法は煩雑なので、もっとよい方法はないでしょうか。

  • Excel 関数

    A1セルに、 集金 と入力した場合は、 A2セルとA3セルはブランクにし、 A1セルに 0から999 までの数字を入力した場合は、 A2セルに1をA3セルはブランクにし、 A1セルに" 1000以上 の数字を入力した場合は A2セルをブランクでA3セルに1をを表示させる。 A2セルA3セルの式をそれぞれ教えて頂けると助かります。 よろしくお願いします。

  • 【エクセル】抽出データを上に詰めて表示させたい。

    重複するデータを上に詰めて表示さセル方法が解らないです。 B列はA列の元データから重複分は表示しないようにしています。 C列はA列の元データから重複分の数を数えています。 │A │B    │C│ D │ 1│あああ │あああ │3│ 2│いいい │いいい │2│ 3│あああ │     │ │ 4│ええ  │ ええ  │2│ 5│おおお │おおお │1│ 6│ええ  │   │ │ 7│いいい │  │ │ 8│あああ │  │ │ 9│うううう│うううう│1│ ・ ・ 上記のような表で、A列が元データで、 B列にはセルB1から、=IF(COUNTIF($A$1:A1,A1)>1,"",A1)という関数を オートフィルで下まで伸ばしています。 C列は、=IF(COUNTIF($A$1:A1,A1)>1,"",COUNTIF($A$1:$A$100,A1))と いう関数を使用しています。 そこで、B列C列の何も表示されていないセルを詰めて、上に詰めて 表示させたいです。マクロは良くわからないのでなるべく関数で お願いします。ちなみに、今使用している関数も、こうしたほうが いいというのがありましたら。訂正してもらえると助かります。 解りづらいところがありましたら、補足します。 宜しくお願いします。

  • エクセルVBA 重複を表示したい

    エクセルVBA 重複を表示したい A列で重複すると警告するコードを以下のように作成しました。 これを修正してA列で重複して、なおかつB列でも重複した場合警告するコードにしたいのです。 添付した図では「同姓同名あり、確認してください、鈴木一郎、山口」と表示したいのです。 ご教授よろしくお願いします。 Sub test() Dim myRange As Range Dim 同一flag As Boolean Dim MsgStr As String For Each myRange In Range("A2:A10") If WorksheetFunction.CountIf(Range("A2:A10"), myRange) > 1 Then If 同一flag = False Then 同一flag = True If InStr(1, MsgStr, myRange) = 0 Then MsgStr = MsgStr & myRange & vbCrLf End If End If Next If 同一flag = True Then MsgBox "同姓同名あり" & Chr(13) & _ "確認してください" & Chr(13) & _ vbCrLf & MsgStr Else End If End Sub