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

VBA初心者です。A,B,Cのブック間のシート1のセルA1がそれぞれイコールでない時に「AとBはイコールではありません」、「BとCはイコールではありません」、「AとCはイコールではりません」それ以外のときは「すべてイコールです」と表示したいのですがIFを試してみたのですがうまく作成できません。どなたか教えてくださいませ。

A 回答 (2件)

[ご質問のメッセージを出すには]


sub macro1()
dim a,b,c
a = workbooks("A.xls").sheets(1).range("A1").value
b = 同上
c = 同上

if a<>b then msgbox "A<>B"
if b<>c then msgbox "B<>C"
if c<>a then msgbox "C<>A"

if a = b and b = c then msgbox "A=B=C"

end sub
    • good
    • 0
この回答へのお礼

早速教えていただきありがとうございました。

お礼日時:2010/03/20 01:16

現状のメッセージの出し方だと、多分すっきりしないと思います。


メッセージの内容を以下のように変えてみてはいかがでしょうか。

【例1】「A=1、B=1、C=2」の場合
<現状で出すことになるメッセージ>
 「AとBはイコールではありません」(A(=1)≠C(=2))
 「BとCはイコールではありません」(B(=1)≠C(=2))
<変更後のメッセージ>
 「(AとBはイコールですが) Cはイコールではありません」

【例2】「A=1、B=2、C=3」の場合
<現状で出すことになるメッセージ>
 「AとBはイコールではありません」(A(=1)≠B(=2))
 「BとCはイコールではありません」(B(=2)≠C(=3))
 「AとCはイコールではありません」(A(=1)≠C(=3))
<変更後のメッセージ>
 「すべてイコールではありません」

上記のようなメッセージでよければ、以下のような分岐にできます:

If A = B And B = C Then
  MsgBox "すべてイコールです"
ElseIf A = B Then
  MsgBox "Cはイコールではありません"
ElseIf B = C Then
  MsgBox "Aはイコールではありません"
ElseIf C = A Then
  MsgBox "Bはイコールではありません"
Else
  MsgBox "すべてイコールではありません"
End If


・・・以上、参考まで。
    • good
    • 0
この回答へのお礼

返答ありがとうございます。A=Bの時にCはイコールではありません。ではなくA=Bではありませんとどうしても表示したかったので大変参考になりました。ありがとうございました。

お礼日時:2010/03/20 21:03

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