c# Aspose设置单元格格式

代码如下,两个对应的list集合,带入aspose中,用公式算出XIRR数据,大多数都是可以算出来,也可以读取出来,只有一条数据,随便造的数据有问题,读取不出来,
A B C
33333.33 2017/02/01 -0.9702
33851.85 2017/03/01

33620.37 2017/03/01

10000 2017/03/01

-100000 2017/03/04

如上数据,直接保存的EXCEL中也是有值的,就是worksheet.Cells["C1"].DoubleValue;获取不到值,这是为什么呢,有没有大神解读下,上面注释代码为测试代码直接读取也是不行的。

public static double XIRR(IList values, IList dates)
{ //Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook("G:\ceshi.xlsx");
////workbook.("G:\ceshi.xlsx");
//Cells cells = workbook.Worksheets[0].Cells;
//string str1 = cells["A1"].StringValue;
//string str2 = cells["C1"].StringValue;

            int count = values.Count;
            Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook();
            Aspose.Cells.Worksheet worksheet = workbook.Worksheets[0];

            for (int i = 0; i < count; i++)
            {
                worksheet.Cells[string.Format("A{0}", (i + 1))].PutValue(values[i]);
                worksheet.Cells[string.Format("B{0}", (i + 1))].PutValue(dates[i].ToString("yyyy/MM/dd"));
            }

            worksheet.Cells["C1"].Formula = string.Format("=ROUND(XIRR(A1:A{0}, B1:B{1}),4)", count, count);
            workbook.CalculateFormula();
            //workbook.Save("G://ceshi.xlsx");
            return worksheet.Cells["C1"].DoubleValue;       
    }

1个回答

请大神带入试试,数据都有啦!!!非常感谢!

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!