我很遗憾没有创建宏的权限,因此我必须使用公式进行编码。我的问题是,如果成功发生,是否有可能增加细胞价值。
IF(A1=B1,'Sheet1'!A1,equal)
所以我想要的是'Sheet1'的一些功能!A1,使其仅在使用时递增。因此,当我拉出公式A1 = B1时,每个单元格都会改变。但是'Sheet1'!A1只会增加到'Sheet1'!A2,当'Sheet1'!A1被使用时。从那时起是'Sheet1'!A2,直到新的增量发生。
B C D
如上图所示,中间行存在以下公式:
=IF(LEFT(D9,3)<>LEFT(D10,3),'2_System documentation'!D30,"See Above.")
所以真正的语句'2_System documentation'!D30
只有在使用时才会改变。是否可以不使用宏?
另一次尝试解释
很抱歉,解释不够好。这是最具描述性的。但我会在这里尝试另一种方式:
IF(A1 = B1,真,C1),让我们说它是真的10次,然后当我拖动公式时我仍然想要这个结果:IF(A11 = B11,真,C1)。现在A11 = B11不成立,因此结果是C1,当我继续拖动下一个公式时应该是IF(A12 = B12,true,C2)。这样C只有在使用时才会增加。希望这更精确?
代码尝试
Struct Cell;
New savedCell = excel.sheet.cell(C1);
Cell Function(cell1,cell2)
{
Cell Temp = null;
If(cell1 == cell2)
{
Temp = new cell{True};
}
Else
{
Temp = savedCell;
savedCell = excel.sheet.cell(C2)
}
return Temp;
}
struct cell对应于excel单元格。
savedCell,是与单元格对应的单元格,只应在成功时递增。
这可以在您填写所有单元格的公式中进行。或者我需要一个宏。
答案 0 :(得分:1)
好吧,用我糟糕的英语解释这可能并不容易,但我会尝试。
首先我假设您有3列,AB和C.前2列是您想要比较的数据,C列是您希望看到的数据但是您希望在特定时间看到以下结果条件满足。我在excel中创建了以下表格
在该表中,我使用D列查找C列所需的行号,其中以下公式从第二个单元格开始(D2):
=IF(A1=B1,D1,D1+1)
之后,D列是您想要的结果,具有以下公式:
=IF(A2=B2,TRUE,INDIRECT(F2))
和E列是具有增加条件的C列的地址,公式:
="C"&D2
我希望这可以解决你的问题。
<强>更新强> 我忘了提到第一行是除了列D之外的标题。我在那里放了1个公式。您可能需要将该1保留在D列的第一个单元格中。
答案 1 :(得分:1)
如果我理解您的预期用途,我认为这应该可以在不需要辅助列的情况下使用。
对于第一个条目,我假设A1 = B1,并且您想从C1中提取标题。以下假设&#34;目标&#34;列为D.对于D1,只需使其等于C1。对于列的其余部分,您可以为列的其余部分输入此内容:
=IF(A2=B2,D1,INDEX(C:C,MATCH(D1,C:C,0)+1))
基本上,D栏列出了标题。如果在行n An = Bn中,Dn将列出与其上方的单元格相同的标题,D(n-1)。如果An = / = Bn,Dn将从C列中提取下一个标题。