g15221806597 2017-03-06 08:25 采纳率: 0%
浏览 2607

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条回答

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥30 求十字路口交通灯S7-200plc,今天早上八点前。
      • ¥20 如何用智能手表oppowatch3实现个人热点功能
      • ¥15 运营商打开wanpush会有怎么样的危害
      • ¥15 Java编程题,定义一个时钟
      • ¥15 Python面向对象编程——生成多项式的一阶导数
      • ¥15 在编写C++程序遇到了问题
      • ¥15 java程序查找字符串中所有的回文并输出
      • ¥15 怎么让只支持对.exe 和.dll文件进行加壳的加壳器,同时让它也支持php文件加壳呢
      • ¥15 这两个数学公式什么意思?
      • ¥15 求助大佬:如何解决char类型多维数组的多次输入问题?