你调用的对象是空的。 -对不起,我只是听不懂其他张贴类似内容的人

时间:2018-10-28 09:49:44

标签: c# pivot-table nullreferenceexception epplus

对编程来说相对较新,并且对此进行了研究,但无法解决我的问题。已经有点笨了,所以对我好一点...

using (SqlDataAdapter da = new SqlDataAdapter(sqlcmd))
                    {
                        DataTable dt = new DataTable();
                        da.Fill(dt);

                        var dataCell = worksheet.Cells["A3"];
                        var dataRange = dataCell.LoadFromDataTable(dt, true);



                        foreach (var sheets in package.Workbook.Worksheets)
                        {

                            foreach (var pivot in sheets.PivotTables)
                            {
                                if (pivot.Name == worksheet.Name){
                                    Console.WriteLine("{0,-14}", pivot.Name);
                                    Console.WriteLine("{0,-14}", dataRange.ToString()); 
                                    pivot.CacheDefinition.SourceRange = dataRange;
                                    Console.ReadKey();
                                }

                            }
                        }
                    }

所以我从数据表中获得了dataRange。这似乎很好。在这种情况下,我将“ A3:W21622”作为进入foreach循环的值。我有它,因此我想更新使用dt中数据的数据透视表范围。

pivot.CacheDefinition.SourceRange = dataRange;

这是我获得NULLReference的地方。抱歉,我迷路了,这是本来令人愉悦的体验之谜的最后一块。

0 个答案:

没有答案