我有一张表格,其中A1为空白,数字(12345)或声明(" foo')。我想做的是:
If A1 is blank then A2 is blank
OR
If A1 is number then A2 = TODAY
OR
IF A1 is "foo" then A2 = "bar"
我已经开始了,就像它的工作方式一样,只需要添加" foo"一部分。
=IF(ISBLANK(A1), , TODAY())
答案 0 :(得分:3)
您可以将其重写为:
IF (A1 is blank) THEN
A2=""
ELSE
IF (A1 is number) THEN
A2 = TODAY
ELSE
IF (A1 is "foo") THEN
A2 = "bar"
因此,在电子表格中,您可以嵌套IF
语句:
IF(ISBLANK(A1), "", IF(ISNUMBER(A1), TODAY(), IF(EQ(A1, "foo"), "bar", "ERR: A1 matched no pattern.")))
答案 1 :(得分:2)
您可以使用嵌套的class Meta(type):
def __init__(cls, name, bases, attrs):
print "bases = {}".format(bases)
items = {k:v for k,v in attrs.iteritems() if not k.startswith('__')}
for k,v in items.iteritems():
print k, v
class Foo(object):
__metaclass__ = Meta
hi = 1
# This prints:
# bases = (<type 'object'>,)
# hi 1
class Bar(Foo):
pass
# This prints:
# bases = (<class '__main__.Foo'>,)
Foo.hi
#prints 1
Bar.hi
#prints 1
语句执行此操作。将以下内容放在单元格IF
中:
A2
首先,它检查单元格是空白还是空字符串(如果您不希望空字符串部分将=IF(OR(ISBLANK(A1), A1=""),"",IF(ISNUMBER(A1),TODAY(),IF(A1="foo","bar",ERROR.TYPE(A1))))
替换为OR(ISBLANK(A1), A1="")
)。如果单元格为空,则使ISBLANK(A1)
等于空字符串(注意 - 空字符串与空白字符串不同。据我所知,无法返回“空白”)。
如果单元格不是空白或空字符串,则检查它是否为数字。如果是数字则返回当前日期。
如果它不是数字,则检查该单元格是否等于字符串“foo”。如果它等于foo,则返回字符串“bar”。
如果这些语句都不成立,则返回错误。您可以将A2
替换为您想要的任何默认操作(可能只是ERROR.TYPE(A1)
)。
例如:
""