Excel单元格公式正在使用工作表名称更新。从ASP.NET导出

时间:2017-09-13 06:02:22

标签: c# excel excel-formula export export-to-excel

=CONCATENATE( "Level3!$B",  MATCH($B6,Level31!$A:$A,0),":$B", COUNTIF(Level31!$A:$A,$B6) + MATCH($B6,Level31!$A:$A,0)-1)

我在excel单元格中有这个公式。我通过C#代码复制粘贴在下面的所有行中。这里很好。

问题在于,此公式{​​{1}}是一个工作表名称,已重命名为Level3。这个变化在三个地方自动反映在公式中,而不是在第一个地方。为什么 在单元格中手动更改公式后,它可以正常工作。

第二个问题出在下一个细胞中 在哪里实施另一个公式。当我打开表格时,它会显示Level31 但是当我点击单元格并按下回车键时。它开始工作..

有人可以指导我吗?

1 个答案:

答案 0 :(得分:0)

如果您将第一个地方称为=CONCATENATE( "Level3!$B",,则该值将存储为字符串,并且不会自动从3到31进行调整。请尝试使用此公式=CONCATENATE(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)&"!$B", MATCH($B6,Level31!$A:$A,0),":$B", COUNTIF(Level31!$A:$A,$B6) + MATCH($B6,Level31!$A:$A,0)-1) 公式MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)使你的第一个地方也充满活力。