尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

使用 C# 自动创建和格式化 Word 表格

使用 C# 自动创建和格式化 Word 表格
📅 发布时间:2026/6/24 9:54:51
要在 C# 中自动创建和格式化 Word 表格,可借助Microsoft.Office.Interop.Word库或DocX(更轻量,无需安装 Office)。以下分别介绍两种方案的实现方法:

方案一:使用 Microsoft.Office.Interop.Word(需安装 Office)

1. 安装依赖

通过 NuGet 安装Microsoft.Office.Interop.Word包(或手动引用 COM 组件Microsoft Word xx.x Object Library)。

2. 示例代码:创建并格式化表格

csharp
 
运行
 
 
 
 
using Microsoft.Office.Interop.Word;
using System;class WordTableCreator
{static void Main(){// 创建Word应用程序实例Application wordApp = new Application();wordApp.Visible = true; // 显示Word窗口// 创建新文档Document doc = wordApp.Documents.Add();// 在文档末尾插入表格(3行4列)Table table = doc.Tables.Add(Range: doc.Range(), NumRows: 3, NumColumns: 4);// 设置表格样式table.Style = "Table Grid"; // 使用内置网格样式table.Borders.Enable = 1; // 启用边框// 填充表头table.Cell(1, 1).Range.Text = "姓名";table.Cell(1, 2).Range.Text = "年龄";table.Cell(1, 3).Range.Text = "部门";table.Cell(1, 4).Range.Text = "入职日期";// 填充数据行table.Cell(2, 1).Range.Text = "张三";table.Cell(2, 2).Range.Text = "28";table.Cell(2, 3).Range.Text = "研发部";table.Cell(2, 4).Range.Text = "2023-01-15";table.Cell(3, 1).Range.Text = "李四";table.Cell(3, 2).Range.Text = "32";table.Cell(3, 3).Range.Text = "市场部";table.Cell(3, 4).Range.Text = "2022-05-20";// 格式化表头(加粗、居中)foreach (Cell cell in table.Rows[1].Cells){cell.Range.Bold = 1; // 加粗cell.Range.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter; // 居中cell.Shading.BackgroundPatternColor = WdColor.wdColorLightGray; // 背景色}// 设置单元格内边距table.CellPadding = 10;// 调整列宽(第1列宽度设为80pt,第2列100pt)table.Columns[1].Width = wordApp.InchesToPoints(1); // 1英寸=72pttable.Columns[2].Width = wordApp.InchesToPoints(1.5f);// 保存文档string filePath = @"C:\Temp\WordTableDemo.docx";doc.SaveAs2(filePath);// 释放资源doc.Close();wordApp.Quit();System.Runtime.InteropServices.Marshal.ReleaseComObject(table);System.Runtime.InteropServices.Marshal.ReleaseComObject(doc);System.Runtime.InteropServices.Marshal.ReleaseComObject(wordApp);Console.WriteLine("Word表格创建完成!");}
}
 

方案二:使用 DocX(无需安装 Office)

1. 安装依赖

通过 NuGet 安装DocX包(DocX由 Xceed 开发,轻量级且跨平台)。

2. 示例代码:创建并格式化表格

csharp
 
运行
 
 
 
 
using DocX;
using System;
using System.Drawing;class DocXTableCreator
{static void Main(){// 创建新文档using (DocX document = DocX.Create(@"C:\Temp\DocXTableDemo.docx")){// 添加标题document.InsertParagraph("员工信息表").FontSize(15).Bold().SpacingAfter(20);// 创建表格(3行4列)Table table = document.AddTable(3, 4);table.Design = TableDesign.LightGridAccent1; // 表格样式// 填充表头table.Rows[0].Cells[0].Paragraphs.First().Append("姓名").Bold();table.Rows[0].Cells[1].Paragraphs.First().Append("年龄").Bold();table.Rows[0].Cells[2].Paragraphs.First().Append("部门").Bold();table.Rows[0].Cells[3].Paragraphs.First().Append("入职日期").Bold();// 填充数据行table.Rows[1].Cells[0].Paragraphs.First().Append("张三");table.Rows[1].Cells[1].Paragraphs.First().Append("28");table.Rows[1].Cells[2].Paragraphs.First().Append("研发部");table.Rows[1].Cells[3].Paragraphs.First().Append("2023-01-15");table.Rows[2].Cells[0].Paragraphs.First().Append("李四");table.Rows[2].Cells[1].Paragraphs.First().Append("32");table.Rows[2].Cells[2].Paragraphs.First().Append("市场部");table.Rows[2].Cells[3].Paragraphs.First().Append("2022-05-20");// 格式化表头(居中、背景色)foreach (TableCell cell in table.Rows[0].Cells){cell.Paragraphs.First().Alignment = Alignment.center;cell.FillColor = Color.LightGray;}// 设置列宽table.SetColumnWidth(0, 80);table.SetColumnWidth(1, 60);table.SetColumnWidth(2, 100);table.SetColumnWidth(3, 100);// 将表格插入文档document.InsertTable(table);// 保存文档document.Save();}Console.WriteLine("DocX表格创建完成!");}
}
 

关键功能说明

  1. 表格创建:指定行列数生成表格,填充文本内容。
  2. 样式格式化:
    • 边框、背景色、对齐方式(居中 / 左对齐)
    • 字体样式(加粗、字号)
    • 列宽、单元格内边距调整
  3. 资源释放:使用Interop时需手动释放 COM 对象,避免内存泄漏;DocX使用using自动释放。

注意事项

  • Interop 方案:需安装 Microsoft Office,且版本需与引用的 COM 组件匹配。
  • DocX 方案:无需 Office,适合服务器环境,但高级格式支持略少于 Interop。

相关新闻

  • GitHub Actions安全漏洞:GITHUB_TOKEN部分泄露风险分析
  • NeurIPS 2025Mamba引爆3D重建!MVSMamba:效率与精度双双超越Transformer
  • 委托和事件的区别

最新新闻

  • 2026江苏企业如何判断三维扫描项目是否真正有价值
  • Cat-Catch终极实战手册:3分钟快速掌握网页资源嗅探技巧
  • 2026年微信小程序搭建一个课件系统怎么做?
  • AISMM可追溯性不是选择题:2026年SITS强制生效前,你必须掌握的7类决策链路埋点技术
  • Scan Tailor:专业级扫描文档优化工具完全指南
  • 【小白向】桌面指令自动化工具,虾壳云一键部署 OpenClaw v2.7.9 新手安装全流程(最新安装包)

日新闻

  • 终极指南:如何用shadPS4在电脑上免费畅玩PS4游戏
  • 打造个性化Instagram Clone:主题定制与用户体验优化技巧
  • 未来展望:RoseTTAFold-All-Atom的发展路线图与社区支持资源汇总

周新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号