1

我在尝试使用 oledb 之后才开始使用 epplus 库,然后尝试了互操作。

下面是我正在做的

public void editExcel_VariablesEEP()
    {
        try
        {
            FileInfo newFile = new FileInfo(excelQuotePath);
            ExcelPackage pck = new ExcelPackage(newFile);
            var energyCalculation = pck.Workbook.Worksheets[4];
            var ROI = pck.Workbook.Worksheets[3];
            var NPV = pck.Workbook.Worksheets[2];
            var Summary = pck.Workbook.Worksheets[1];

            energyCalculation.Cells["B5"].Value = Convert.ToDecimal(numericUpDown1.Value);
            energyCalculation.Cells["B6"].Value = numericUpDown2.Value;
            energyCalculation.Cells["B7"].Value = numericUpDown3.Value;
            energyCalculation.Cells["B8"].Value = numericUpDown4.Value;                
            NPV.Cells["B12"].Value = (numericUpDown5.Value/100);
            NPV.Cells["B13"].Value = (numericUpDown6.Value / 100);
            NPV.Cells["B14"].Value = (numericUpDown7.Value / 100);
            energyCalculation.Cells["F40"].Value = (numericUpDown8.Value / 100);
            energyCalculation.Cells["L5"].Value = numericUpDown9.Value;
            energyCalculation.Cells["G60"].Value = (comboBox1.Text);
            Summary.Cells["K2"].Value = (quoteName.Text);

            pck.Save();
        }
        catch (Exception e)
        {
            Console.WriteLine(e);
        }

    }

由于未知原因,它将正确保存,Visual Studio 中没有显示错误。但是当我打开 xlsx 文件时,我会看到“文件已损坏”提示。然后我同意修复,错误显示为 - Removed Part: Drawing shape。但是,当我查看 Excel 时,所有数据都存在并说明了。

如果您对此熟悉,请提供帮助。

谢谢。

//更新测试只是继续,我正在做的事情,我将模板 xlsx 文件复制到另一个文件夹,我运行上面发布的代码并保存它。我加载了新编辑的 xlsx 文件并显示错误。我确认修复然后保存/覆盖它。然后我再次运行该程序,但我将其指向文件。它节省。我跑了,没有出现错误。发生了什么事,我不知道是什么。

//更新2

那么,到目前为止发生了什么。错误在其描述中是正确的。这是一个引起问题的图像。我完全忽略了它,因为它是一个小图像。我必须做的修复是通过右键单击图像更改“大小和属性”菜单中的一些设置。在属性选项卡下,我选中了“不要移动或调整单元格大小”,并选中了打印对象和锁定复选框。最后,在尺寸选项卡下,我检查了“锁定纵横比”。加载时没有显示错误。但是观察文件大小,看起来图像没有“保存”,因为每次我打开 excel 然后关闭时,即使我没有做任何更改,它也会要求保存。确认保存,文件大小不同(大小增加)。测试这个“奇怪的保存”是否会影响重新打开文件或进一步编辑,我试过了,很好。没问题,重开。但“奇怪的保存”仍然存在。

4

0 回答 0