我希望如果column B
有文本,那么在相应的单元格中column A
应该根据前一个条目或所谓的系列来填充数字。
我尝试过在 A1 上使用这个=IF(B1=="","",1)
,但是没有用。我将其拖到所有单元格,column A
但是它填充1
了所有单元格。
这个怎么做?
答案1
您正朝着正确的方向前进,但 IF 语句的语法不正确。IF 函数的语法如下;
IF(逻辑测试,[如果为真则为值],[如果为假则为值])
因此,要实现您的要求,您需要满足这 3 个要素。
- 逻辑测试
B1
看它是否包含“无”。这只需要一个等号;B1=""
- 如果逻辑测试为真( 中没有任何内容
B1
),则告诉它应该做什么。 在你的情况下,什么也不做;""
- 如果逻辑测试为假(中的某些内容
B1
),则单元格A1
将填充单元格引用、公式、特定文本或固定数字的值;1
(或您希望的任何值)。
把所有东西放在一起;=IF(B1="","",1)
或者=IF(ISBLANK(B1),"",1)
在 中公式生效后A1
,将其复制到A2
并按如下方式修改,将前一个值加一;=IF(B1="","",SUM(A1+1))
。现在,您可以将其从 复制A2
到 中的其余单元格Column A
。
答案2
在 Excel 中,“等于”的比较运算符是一个 = 符号,而不是两个。
我假设您所说的“上一个条目”是指上面的单元格。不太清楚您想要显示什么。如果您只想在 B 列有值的行中显示 1,请尝试
=if(B1="","",1)
并抄下来。
如果这不能回答您的问题,请提供更多细节。一张手动模拟所需结果的屏幕截图可以作为开始。
答案3
我解决了使用最后一列来制作正确系列的问题。它所做的如下:
- 定义名称
XFD1
为X
并赋值0。 - 指定公式
XFD2=如果(B2="","",1)
到 XFD2 并根据需要将其拖动到 1000 个或更多单元格。
- 现在对于 A2,它将是系列的起点,分配以下公式:
A2=IF(B2="","",SUM(INDIRECT(ADDRESS(ROW(X),COLUMN(X))):INDIRECT(ADDRESS(ROW(),COLUMN(XFD2)))))
- 现在将其拖动到等效单元格,就像在 XFD 列中拖动一样
仅当 B 列中对应的单元格有任何文本时,这才会填充 A 列中的有序系列。