其他分享
首页 > 其他分享> > 导致我在Excel电子表格中看到绿色三角形的公式有什么问题?

导致我在Excel电子表格中看到绿色三角形的公式有什么问题?

作者:互联网

我在Excel电子表格中得到了绿色三角形,表明该单元格下面的公式有问题,尽管该列单元格中的数据看起来正确且格式正确.

我用来填充该列的代码是:

var avgWeeklyDeliveriesCell = (Excel.Range)_xlSheet.Cells[curDelPerfRow, 
    AVG_WEEKLY_DELIVERIES_COLUMN];
avgWeeklyDeliveriesCell.Value2 = string.Format("=ROUND(AVERAGE(C{0}:I{0}), 2)", 
    curDelPerfRow);
avgWeeklyDeliveriesCell.NumberFormat = "#,##0.00";

该列中的值为3.43、1.57、2.00等.

此公式有什么问题(“ = ROUND(AVERAGE(C {0}:I {0}),2)”)?似乎可行,那么为什么绿色三角形使它们的存在可见?

更新

我添加了以下代码:

_xlApp.ErrorCheckingOptions.InconsistentFormula = false;
_xlApp.ErrorCheckingOptions.BackgroundChecking = false;

…但是没有区别;我仍然看到绿色的小家伙.

更新2

我知道大约99.97%的警告是虚假的(毕竟,值是正确的),但正如前面所指出的,我无法将其关闭.

为什么我确定我的配方好?注意这个尖叫声:

enter image description here

当我单击绿色三角形并将鼠标悬停在带有绿色感叹号的符号上时,我看到的消息是:“此单元格中的公式表示与该数字相邻的范围”

显示的公式是“ = ROUND(AVERAGE(C10:I10),2)”,这是我想要的-“ Sun Orders”到“ Sat Orders”的平均值,但显然是由于存在另一列(“ Total Orders” )位于计算出的值和抱怨绿色的值之间,它认为某事不对劲.

我在想,也许我应该将公式更改为:

=ROUND(I11 / 7, 2)

…要么:

=ROUND(I11 DIV 7, 2)

…但都不接受…

解决方法:

问题是“总订单”列是一个设置值,而不是公式.将“总订单”列设置为:

=SUM(C10:I10)

Sample excel image showing the inserted value vs. formula

您的警告将消失.您的平均公式是正确的,Excel只是在寻找您.

标签:excel-formula,excel-interop,error-checking,c
来源: https://codeday.me/bug/20191119/2033228.html