gpt4 book ai didi

C# Excel 函数 - 检测到无法访问的代码

转载 作者:行者123 更新时间:2023-11-30 19:05:42 26 4
gpt4 key购买 nike

我正尝试在 C# 中创建一个函数类以用于 excel 自动化加载项。使用下面的简单代码,我想在与用户选择的颜色相匹配的范围内添加值(例如, sum Range("A1:A10") ,其中单元格颜色与“B1”相同: colourSum(A1:A10,B1).

    public double ColourSum(Range RangeToSum, Range cellContainingColourToSum)
{
double currentTotal = 0;
//return 0; this code is edited from my original posting, due to posting error
for (int i = 0; i < RangeToSum.Cells.Count;i++) //error at 'int i'
{
double iColour = RangeToSum.Interior.ColorIndex(i);
if (iColour == cellContainingColourToSum.Interior.ColorIndex)
{
currentTotal = currentTotal + RangeToSum.Value2(i);
//return currentTotal;

}

}
return currentTotal;
}

不幸的是,上面的代码在第 4 行返回“Unreachable code detected”。我给出的代码示例是我实际想要做的事情的简化示例,但很好地说明了我的观点。是我的代码有问题,还是我可以用更好的方式来避免这个问题?

谢谢,里科。

为了总结这个问题,以下代码完全有效(更改 for(int i...with foreach (Range r...)):

    public double ColourSum(Range RangeToSum, Range cellContainingColourToSum)
{
double currentTotal = 0;
foreach (Range r in RangeToSum)
{
double iColour = r.Interior.ColorIndex;
if (iColour == cellContainingColourToSum.Interior.ColorIndex)
{
currentTotal = currentTotal + r.Value2;
}
}
return currentTotal;
}

最佳答案

您的代码到达行的那一刻:

return 0;

它将退出,它无法到达其余代码。删除该行。

关于C# Excel 函数 - 检测到无法访问的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18316725/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com