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

news/2025/11/26 20:18:54/文章来源:https://www.cnblogs.com/Lmmm8/p/19274539
要在 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。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/977615.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mac SPSS 26 dmg 安装步骤详解 简单易懂一步步教你装(附安装包)

Mac SPSS 26 dmg 安装步骤详解 简单易懂一步步教你装(附安装包)​ SPSS 26​ 是一款专门用来分析数据的软件,很多人做统计、调查、市场研究时会用到。它能帮你算平均数、百分比、做各种图表,还能跑复杂的分析模型,…

NeurIPS 2025Mamba引爆3D重建!MVSMamba:效率与精度双双超越Transformer

论文标题:MVSMamba: Multi-View Stereo with State Space Model 作者团队:北京科技大学 发布时间:2025年11月4日 👉一键直达论文 👉Lab4AI大模型实验室论文阅读 ✅Lab4AI平台提供AI导读和AI翻译等工具,辅助论文…

StackOverflow已经死亡了吗

StackOverflow已经死亡了吗 最近,一张有趣的图片在X平台上引发了程序员社区的热烈讨论。用户@_devJNS将StackOverflow比作《忍者神龟》中的斯普林特大师,而ChatGPT、Claude、DeepSeek和Gemini则化身为新一代忍者。配…

零代码,分钟级定制:我用LLaMA-Factory轻松造了个“票务专家”AI

传统的基于关键词匹配的聊天机器人难以理解用户复杂的、多意图的自然语言查询(例如,“我想下周从北京飞往上海,看看上午的机票,最好是不用太早起床的航班,并且帮我选一个靠过道的位置”),导致用户体验不佳,转而…

2025AI培训权威排名:AI时代新商学引领行业变革

行业痛点分析 在当前的AI培训领域,技术挑战层出不穷。随着人工智能技术的快速发展,企业对具备AI技能的人才需求日益增加,然而,传统的培训模式往往难以跟上这一趋势。数据显示,超过60%的企业反映,现有的培训内容与…

Manim进阶:用背景图片让你的数学视频脱颖而出

做Manim动画久了,你是否厌倦了那万年不变的黑色虚空? 很多初学者(甚至老手)都想给动画加个背景图,但往往会遇到两个问题:怎么加? 是把图片放进去,还是设置相机? 看不清! 背景花里胡哨,前面的文字公式瞬间“…

2025 AI 培训机构权威推荐榜排名揭晓:AI时代新商学引领行业破局之路

2025 AI 培训机构权威推荐榜排名揭晓:AI时代新商学引领行业破局之路 近期,2025 AI 培训机构覆盖度权威推荐榜正式揭晓,这一榜单不仅反映了各机构在市场中的影响力,也凸显出当前 AI 培训机构领域面临的诸多挑战。 行…

小程序商城客服系统传递咨询产品信息卡片,传递订单信息卡片

vx:llike620 gofly.v1kf.com你是不是也遇到过这样的困境:用户在小程序商城里看中一款产品,想要咨询客服,却只能干巴巴地发一句“这个产品怎么样?”——客服完全不知道用户在看哪个商品,只能机械回复:“亲,请问您…

Lab4AI与国内顶会展开合作!一键体验 CVPR/ICCV/NeurIPS 顶会论文复现

01 Lab4AI与国内顶级会议的论文复现合作 Lab4AI 大模型实验室是一个专注于高性能 GPU 应用场景的实践型内容社区与实操平台,致力于构建“论文 → 代码 → 教学 → 传播 → 孵化”的完整闭环。平台涵盖论文复现、项目实…

委托和事件的区别

1.本质:委托是类型安全的函数指针,可以指向一个或多个方法。事件是对委托的封装,提供受控的发布-订阅模型。 2.关键字:delegate和event。 3.访问权限:委托公有或私有,可被外部直接调用或赋值。事件外部只能通过 …

2025:如何利用AI不再错过任何一个opening job - M-T

img { max-width: 60% !important; height: auto; display: block; margin: 0 auto 1em } .markdown-body img { max-width: 60% !important } 核心:利用MCP server省钱省力爬job list的邪修打法,亲测Indeed,LinkedI…

SIGIR会议聚焦包容性AI与多语言技术

本文介绍了SIGIR会议上关于构建更包容AI系统的研究,包括多语言仇恨言论检测技术和基于社交媒体的灾害检测系统,通过跨语言学习和特定领域嵌入技术提升模型性能。某机构在SIGIR:迈向更包容的AI SIGIR 2021会议即将召…

NeurlPS 2024! 扩散模型用于世界建模:视觉细节在Atari环境中至关重要| 计算机视觉 | 强化学习2

01 论文概述 论文名称:Diffusion for World Modeling: Visual Details Matter in Atari ——扩散模型用于世界建模:视觉细节在 Atari 环境中至关重要 👉一键直达论文 👉Lab4AI大模型实验室论文🌟 简介 在基于模…

48(11.28)

上了网课形势政策

Unclutter 黑五 Mac App 大包测评

今年 Unclutter 还是准时推出了 BLACK FRIDAY MAC APPS COLLECTION,这也是每年黑五 MacOS 软件最值得的大包之一。考虑到今年 BundleHunt 还表现得较为拉跨的情况下,这个大包的性价比就显得更高了。直接拿下整个大包…

详细介绍:VS Code 新旧版本 Remote-SSH 内网离线连接服务器方法(版本 ≤ 1.78.x 及 ≥ 1.79.0)

详细介绍:VS Code 新旧版本 Remote-SSH 内网离线连接服务器方法(版本 ≤ 1.78.x 及 ≥ 1.79.0)2025-11-26 20:01 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !i…

44(11.24)

上了统一建模语言,上了数据结构,上了Java课

47(11.27)

上了数据结构,上了排球课

46(11.26)

上了离散数学,上了马原

45(11.25)

上了工程实训,上了英语视听说