C#讀取Word中的表格

本文档介绍了如何使用C#通过Microsoft Word Object Library读取Word文档中的表格内容,将其填充到DataSet中,并展示了一个示例,演示了从数据库中获取数据并以表格形式保存到Word文档中的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      其實,MicroSoft提供了很多類和借口供程序員們使用。最近一個項目中,需要對Word中的表格進行操作:因為老板要求將內部控管系統做成Web版的,以便更好地跟台灣溝通,但是網絡很慢,所以在网頁上輸入一些資料就很討厭,SO,需要制訂一個規格的文檔,比如Word,填寫好文檔后上傳到FTP上,我們再用一支程式掃描這些文檔,自動添加到數據庫中。。。一開始的時候,覺得好沒方向啊,到网上搜了一下,發現原來有很多前輩早在N年前就已經開始這方面的工作了。

1. 開始之前,請先加入參考MicroSoft Word 11.0 Object Library

    "參考"右鍵  ------>  加入參考  -------->  "加入參考"對話框選擇 "COM" 頁  -------->  在列表中找到MicroSoft Word 11.0 Object Library 雙擊選取后確定,會發現參考中多出來兩項:VBIDEWord/p>

2. 請添加using:

   using Word;

3. 讀取Word中的表格

  private void btnIn_Click(object sender, System.EventArgs e)
  {
   try
   {
    object fileName = "E://BB.doc";
    object readOnly = false;
    object isVisible = true;
    object missing = System.Reflection.Missing.Valu

要在C#读取Word文档中的表格内容并显示到DataGridView中,你可以使用Microsoft.Office.Interop.Word库。以下是一个示例代码,展示了如何实现这一功能: 1. 首先,确保你已经在项目中安装了Microsoft.Office.Interop.Word库。可以通过NuGet包管理器来安装。 2. 创建一个Windows Forms应用程序,并在窗体上添加一个DataGridView控件。 3. 使用以下代码来读取Word文档中的表格内容并显示到DataGridView中: ```csharp using System; using System.Windows.Forms; using Microsoft.Office.Interop.Word; namespace WordTableToDataGridView { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string filePath = @"C:\path\to\your\document.docx"; ReadWordTable(filePath); } private void ReadWordTable(string filePath) { Application wordApp = new Application(); Document wordDoc = wordApp.Documents.Open(filePath); foreach (Table table in wordDoc.Tables) { for (int row = 1; row <= table.Rows.Count; row++) { DataGridViewRow dataGridRow = new DataGridViewRow(); dataGridRow.CreateCells(dataGridView1); for (int col = 1; col <= table.Columns.Count; col++) { string cellText = table.Cell(row, col).Range.Text; cellText = cellText.Replace("\r", "").Replace("\n", "").Replace("\a", ""); dataGridRow.Cells[col - 1].Value = cellText; } dataGridView1.Rows.Add(dataGridRow); } } wordDoc.Close(); wordApp.Quit(); } } } ``` ### 代码说明: 1. **引用命名空间**:引入必要的命名空间,包括`Microsoft.Office.Interop.Word`。 2. **Form1_Load**:在窗体加载时调用`ReadWordTable`方法,并传入Word文档的路径。 3. **ReadWordTable**:该方法使用`Microsoft.Office.Interop.Word`库打开Word文档,并遍历文档中的所有表格。 4. **遍历表格**:对于每个表格,遍历其所有行和列,将单元格内容读取出来,并添加到DataGridView中。 5. **清理资源**:关闭Word文档并退出Word应用程序。 ### 注意事项: - 确保你的系统上安装了Microsoft Word。 - 引用Microsoft.Office.Interop.Word库。 - 替换`filePath`变量为你的Word文档的实际路径。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值