c# - 如何通过 C# 在 Excel 中将公式值解析为文本

标签 c# excel worksheet-function

我必须从 MS Excel 文件中解析出一些数据。

我需要从中获取数据的单元格将公式文本作为其值。

例如:

Sheet 2 [A1].Value = "$50"
Sheet 1 [A1].Formula = "='Sheet2'!A1"

当我获取 Sheet1 [A1] 的值时,我得到的是 ='Sheet2'!A1,而不是 $50

有没有办法使用 C# 从 Sheet1[A1] 中获取公式计算后的文本值?

最佳答案

这是 Rup 提到的使用 Microsoft.Office.Interop.Excel 得到的结果

using Microsoft.Office.Interop.Excel;

string fileName = @"C:\TestSheet.xls";
Application xlApp = new Application();
Workbook book = xlApp.Workbooks.Open(fileName);
Worksheet sheet = xlApp.Worksheets[1];
Range range = sheet.get_Range("A1");
Console.WriteLine(range.get_Value(XlRangeValueDataType.xlRangeValueDefault));

关于c# - 如何通过 C# 在 Excel 中将公式值解析为文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5556472/

相关文章:

c# - 带有 C# 驱动程序 2.0 : How to get the result from InsertOneAsync 的 MongoDB(服务器 v 2.6.7)

c# - WPF 字符串到双转换器

c# - 访问 token 不包含通过 Microsoft Graph 的 SCP(角色)声明

C# ASP.NET cs0246 问题

excel - 查找最后一个空行,不包括标题

.net - 如何在VB.NET中使用Excel函数?

excel - Internet Explorer 对象 Excel VBA 的自动化错误未指定错误

java - 使用 apache POI 按值合并动态单元格

excel - 将 Excel 按位函数(BITAND 或 BITOR)应用于具有较大值的范围

excel - 根据每行中两个单元格中的值格式化行