Post-Admin:
Date: 2006年 12月 07日
Subject: ExcelのAND,OR,IFの引数の評価はどうなっているのか
Dim tmp
Function chk1()
tmp = 1
chk1 = True
End Function
Function chk2()
tmp = 2
chk2 = False
End Function
Function chk3()
tmp = 3
chk3 = True
End Function
Function readtmp()
readtmp = tmp
End Function

=IF(AND(chk1(),chk2(),chk3()),readtmp(),readtmp())
=IF(OR(chk1(),chk2(),chk3()),readtmp(),readtmp())
=IF(TRUE,chk1(),chk2())*0+readtmp()
=IF(FALSE,chk1(),chk2())*0+readtmp()

とすると

3
3
1
2

となる。AND,ORとも全ての引数を順に評価し、IFは第一引数によって評価を変えるっぽい。
[PR]
by noaccess | 2006-12-07 11:49 | メモ


Profile:
ほんとうかなあ?
by noaccess
プロフィールを見る
画像一覧

Calender:
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

*: 検索




*: 最新のトラックバック
うげ!
from ぶろぐ、ぶろぐとき、ぶろげば..
えーと
from ぶろぐ、ぶろぐとき、ぶろげば..
あれ
from ぶろぐ、ぶろぐとき、ぶろげば..

*: メモ帳
ぎゃふん状態にある


*: ブログジャンル
つぶやき

*: 画像一覧