プロが教える店舗&オフィスのセキュリティ対策術

エクセル(Windows2000xp)にて。

わかりにくい質問でもうしわけないのですが
   A    B   C   D
1 スズメ  suzume  3  127
2 カラス  karasu  4  128


8 スズメ  suzume  3  127
9 カラス  karasu  5  130

というような表があって
A1~D1(A2~D2)とA8~D8(A9~D9)が一緒だったら○ 違っていたら×というような式を作りたいのですが。
可能なのでしょうか?

現在、=IF(A1:D1=A9:D9,"○","×")という数式をつくりましたが○や×が表示されず式が表示されてしまいます。

A 回答 (7件)

セルの書式が「文字列」になっているのではないでしょうか?


「文字列」のセルに式を書いても、計算されずにそのまま表示されます。
式を書いた後に「文字列」にするのは有効ですが。
    • good
    • 0

違うセルに数式を入力しても”○””×”が表示されないのですか?



あと、数式では
=CONCATENATEを使う方法もありますよ
E1に
=CONCATENATE(A1,B1,C1,D1)と入力してA1:D1迄の値を繋げた文字列にします
他の行も同様にし、
F列でIf関数を使う方法
F1に
=IF($E$1=E8,"○","×")
これで計算は成り立ちます
あとは結果の表示ですね
    • good
    • 0

人間のイメージでは、=IF(A1:A3=B1:B3,"Y","N")などは


「A1:A3とB1:B3が等しい場合は」と言いいたいということで良く判ります。しかし「1セルの値同志を比べる」以外の、複数セル同志を、1対1で比べるのを上記の式で行うのは、エクセルでは出来ないと思います。
C2に入れると、=IF(A2=B2,"Y","N")になるようです。
ですから結果(TRUE、FALSE)は返すが、思ったイメージと
違うわけです。こういうイメージの比較を関数でしたければ、ユーザー(私製)関数をVBAでFunctionProcejureで
作らないといけないと思います。
下記のような(一例)ものです。
Function compa(a As Range, b As Range)
Dim cl As Range
r = b.Row: c = b.Column
r1 = a.Row: c1 = a.Column
For Each cl In a
x = r + cl.Row - r1
y = c + cl.Column - c1
If cl = Cells(x, y) Then
Else
compa = "×"
GoTo p01
End If
Next
compa = "○"
p01:
End Function
セルに=COMPA(A1:A3,B1:B3)とか入れると、A1:A3とB1:B3の内容が同じかどうかに従い、そのセルに○か×が入ります。
(上記VBAは小数例ではOKでしたが、テスト不十分ですので
よろしく)
    • good
    • 0

=IF(A1=A3,IF(B1=B3,IF(C1=C3,IF(D1=D3,"○","×"))))



こういう感じでしょうか?
    • good
    • 0

>計算はできたのですがセルに計算式が表示されて


>○、×が表示されません。
考えられることとしては、
1)ツール=>オプションの表示タブで数式にチェックが入っている。この場合、チェックを外す。
2)セルの書式が文字列になっていて、計算式としてではなく、文字列になっている。この場合、書式を標準に変え、F2キー・リターンで更新する。
が思いつくくらいです。
    • good
    • 0

もっと単純な方法


=IF(AND(A1=A8,B1=B8,C1=C8,D1=D8),"○","×")
    • good
    • 0
この回答へのお礼

すぐのご回答ありがとうございます!
計算はできたのですがセルに計算式が表示されて
○、×が表示されません。
書式が違うのでしょうか?

お礼日時:2004/03/27 02:38

こんな感じでしょうか?


=IF(SUMPRODUCT((A1:D1=A8:D8)*1)=4,"○","×")
    • good
    • 0
この回答へのお礼

すぐのご回答ありがとうございます!
こちらの方法で、計算はできたのですが
やはりセルに計算式が表示されて○、×は表示されませんでした。
書式が違うのでしょうか?

お礼日時:2004/03/27 02:38

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