C#读取Excel中的公式,并生成值

在C#中读取Excel中的公式并生成其计算结果可以使用开源库如EPPlus或Microsoft.Office.Interop.Excel,如果是.xlsm宏文件需用到Microsoft.Office.Interop.Excel。

1.EPPlus方式

using System;

using OfficeOpenXml;

class Program

{

static void Main()

{

string filePath = "your_excel_file.xlsx";

using (var package = new ExcelPackage(new System.IO.FileInfo(filePath)))

{

var worksheet = package.Workbook.Worksheets0; // 选择第一个工作表

// 设置 A1 的值

worksheet.Cells"A1".Value = 5;

// 计算整个工作表中的公式

worksheet.Calculate();

// 获取 A2 的值

double result = worksheet.Cells"A2".GetValue<double>();

Console.WriteLine("Input Value (A1): " + worksheet.Cells"A1".Value);

Console.WriteLine("Calculated Result (A2): " + result);

}

}

}

2.Excel方式

using System;

using Microsoft.Office.Interop.Excel;

class Program

{

static void Main()

{

string filePath = "your_excel_file.xlsm";

// 创建一个 Excel 应用程序对象

Application excelApp = new Application();

// 打开工作簿

Workbook workbook = excelApp.Workbooks.Open(filePath);

// 获取第一个工作表

Worksheet worksheet = workbook.Sheets1;

// 设置 A1 的值

Range rangeA1 = worksheet.Cells"A1";

rangeA1.Value = 5;

// 计算整个工作表中的公式

workbook.Calculate();

// 获取 A2 的值

Range rangeA2 = worksheet.Cells"A2";

double result = (double)rangeA2.Value;

Console.WriteLine("Input Value (A1): " + rangeA1.Value);

Console.WriteLine("Calculated Result (A2): " + result);

// 关闭工作簿和 Excel 应用程序

workbook.Close(false);

excelApp.Quit();

}

}

相关推荐
西门吹-禅10 小时前
java springboot N+1问题
java·开发语言·spring boot
skywalk816310 小时前
设计并实现段言的 C FFI 绑定机制 @Trae
c语言·开发语言·python·编程
IT笔记12 小时前
【Rust】Rust Match 模式匹配详解
java·开发语言·rust
2zcode12 小时前
免费开源项目文档:基于MATLAB卷积神经网络的口罩佩戴检测系统
开发语言·matlab·cnn
逝水无殇12 小时前
C# 运算符重载详解
开发语言·后端·c#
TPBoreas13 小时前
配置信息防泄露方案:.env 环境隔离详解(dotenv-java)
java·开发语言
敲代码的嘎仔13 小时前
实习日志day6--实习日志day6--title命名规范化&businessType纠正&补充缺失的@Log注解&报警与通信模块补充&产出阶段总结文档
java·开发语言·人工智能·git·python·实习·大二
江华森13 小时前
Python 实现高德地图找房(一):环境搭建与数据爬虫
开发语言·爬虫·python
杜子不疼.13 小时前
【Qt初识】信号槽(三):机制意义、断开连接与 Lambda 表达式
开发语言·数据库·qt
老迟到的茉莉14 小时前
Hermes 是谁?跟 Claude Code 差在哪
开发语言·python