Excel の If文 で 算出させた"TRUE"を用いた計算が正しくできる方法を教えて頂けないでしょうか。


現在、EXCELのVBAを用いて、マクロを作成しております。

その中で、下記のような式を作ったとき、求めたい解が出てこなくて困っております。
各セルが次の値の場合、

A1: =IF(A2>0,"TRUE","FALSE")
A2: 3
A3: =A1*A2

このような場合、A3の値に『3』と出てほしいのですが、残念ながら『#VALUE!』と出てしまいます。
A1が『TRUE』とは、表示されますので、この『TRUE』を使ってどのような処理をすれば、良いのか、教えて頂けますと幸いです。

たとえば、A1をコピーして、A1に値として貼り付ける等。

(可能であれば、A1に施す処理をVBAで記載頂けますと、更に幸いです。)

C.F. A1のIF文を『TRUE』の代わりに『1』と、『FALSE』の代わりに『0』とすれば求まることは分かりました。

何卒、よろしくお願いいたします。

回答の条件
  • URL必須
  • 1人5回まで
  • 登録:
  • 終了:2009/01/08 21:05:11
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:hiko3karasu No.1

回答回数1058ベストアンサー獲得回数25

ポイント100pt

原因は

A1: =IF(A2>0,"TRUE","FALSE")

だと

「TRUE」「FALSE」 と言う文字列をA1に入れていることになるからです。

 

解決は

A1: =IF(A2>0,TRUE,FALSE)

これでいいとおもいます。

 

http://q.hatena.ne.jp/1231413948

id:Motonori

ありがとうございます。

かなり悩んでおりましたところでの回答、

感謝感激です。

2009/01/08 21:03:46

その他の回答1件)

id:hiko3karasu No.1

回答回数1058ベストアンサー獲得回数25ここでベストアンサー

ポイント100pt

原因は

A1: =IF(A2>0,"TRUE","FALSE")

だと

「TRUE」「FALSE」 と言う文字列をA1に入れていることになるからです。

 

解決は

A1: =IF(A2>0,TRUE,FALSE)

これでいいとおもいます。

 

http://q.hatena.ne.jp/1231413948

id:Motonori

ありがとうございます。

かなり悩んでおりましたところでの回答、

感謝感激です。

2009/01/08 21:03:46
id:SALINGER No.2

回答回数3454ベストアンサー獲得回数969

ポイント80pt

=IF(A2>3,TRUE(),FALSE())

TRUEとFALSEに()をつけると論理値を返す関数となります。

これは1と0なので上記のことができます。

http://q.hatena.ne.jp/

id:Motonori

ありがとうございます。

助かりました。

2009/01/08 21:04:37

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません