当前位置: 首页 > 知识库问答 >
问题:

通过Excel公式字符串读取Excel单元格值

姜嘉良
2023-03-14

我的C#. Net应用程序通过使用excel公式字符串加载和读取excel工作表单元格值。

例如,excel工作表位置和选项卡名称及其单元格行/列将作为公式字符串提供。

'D:\DataX[数据.Xls]EOD'$A5级

根据上述公式-C#应用程序加载数据。Xls,并打开EOD选项卡,应读取第5行A列值。

寻找在C#中完成的最佳方式。Net框架

共有1个答案

燕永昌
2023-03-14
                string con = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + openFileDialog1.FileName + ";Extended Properties='Excel 8.0;HDR=Yes;READONLY=true;IMEX=1;'";
                using (var connection = new System.Data.OleDb.OleDbConnection(con))
                {
                    connection.Open();

                    xlApp = new Application();
                    xlWorkbook = xlApp.Workbooks.Open(openFileDialog1.FileName);

                    for (int ipage = 1; ipage <= xlApp.ActiveWorkbook.Sheets.Count; ipage++)
                    {
                        Worksheet page = xlApp.ActiveWorkbook.Sheets[ipage];
                        page.Columns.ClearFormats();
                        sayfa.Rows.ClearFormats();
                        var xlRange = page.UsedRange;
                        var lastRow = page.Cells.SpecialCells(XlCellType.xlCellTypeLastCell).Row;
                        int sum = xlRange.Rows.Count - 1;

                        var columns = new List<string>();
                        string ObjecType = "";

                        for (int i = 1; i < xlRange.Columns.Count + 1; i++)
                        {
                        
                        }
                    
                    }
                    
                    connection.Close();
                }
 类似资料:
  • 我正在开发一个上传excel文件并将其值插入数据库的应用程序。 我的代码如下: 所以当我上传一个像下面这样的excel文件时,它会工作并将其数据插入db。 但是,当我上传像以下这样的excel文件时,db不会更新。 我可以问你如何解决这个问题,所以即使单元格的值是=ROUNDUP((600),2),而不是600,它仍然更新db。 提前谢谢你。

  • 问题内容: 我正在使用Apache POI库读取Excel文件。我在读取密码单元时被卡住了。如果用户在密码单元格中输入日期作为密码,即16/05/2012。我正在将此值读取为“ 41045”,而该值应为“ 16/05/2012”。这是我的代码: 有人可以帮忙吗? 谢谢。 问题答案: 您在POI中寻找的类是DataFormatter 当Excel写入文件时,某些单元格将存储为文字字符串,而另一些单元

  • 我正在使用apache POI更改excel表中的单元格。更改值后,与已更改的单元格对应的公式的单元格不会更新。 当我进入excel并单击带有公式的单元格,然后在函数栏中单击时,公式会更新。 A1仍然等于3,直到我点击那个单元格。 刷新工作簿或工作表也不起作用。这是excel或POI的问题吗?有人能想出一个变通办法吗?

  • 我有一个带有sheet1 excel文件,该文件的第2行和第10列有一个我需要读取的值。这是我的代码。 获取了cell对象Excel.Range后,我不知道如何读取该单元格的内容。我试着把它转换成数组并在它上面循环,我试着转换成字符串数组等等,我确信这是非常简单的。有没有直接的方法只得到一个字符串的单元格值?

  • 我读过http://poi.apache.org/spreadsheet/eval.html但我无法让它发挥作用。。。 我的工作表中有一列包含这些值: (对于像“d1”这样的字符串,我编写了一个解析器,用今天的日期替换D,并将其递增1。“01.01.0001”是一个神奇的值。“=A3”显然是一个excel公式) 我如何安全地得到所有这些值到一个普通的旧java字符串 取消之前excel公式的引用

  • 问题内容: 我必须将 算法从Excel工作表移植到python代码, 但必须对 Excel文件中的算法 进行 反向工程 。 Excel工作表非常复杂,它包含许多单元格,在这些单元格中有引用其他单元格的公式(也可以包含公式或常数)。 我的想法是使用python脚本分析工作表,以构建一种单元格之间的依存关系表,即: A1取决于B4,C5,E7公式:“ = sqrt(B4)+ C5 * E7” A2取决