首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

WinForms 專案中 DataGridView 匯出 Excel 的踩坑與解決之道

     編輯:關於SqlServer

在 VS2005 + Office 2003 環境下開發 WinForms 系統,需將 DataGridView 資料匯出 Excel。雖然過往 VB 時代處理過類似需求,但實際動手時才發現引用 Microsoft.Office.Interop.Excel 總出現黃色驚嘆號,無法正常使用。經排查發現,根因在於 Office 2003 安裝時未勾選「.NET 可程式設計支援」。

問題現象

  • 加入參考 Microsoft Excel 11.0 Object Library 後,Microsoft.Office.Interop.Excel 顯示黃色驚嘆號,無法解析命名空間。
  • 網路資訊多建議用 Tlbimp.exe 配合 Excel.olb 產生 Interop 組件,但 Office 2003 根本找不到 Excel.olb。

根因與解決方案

Office 2003 安裝選項中預設未勾選 .NET 可程式設計支援,導致缺少 Primary Interop Assemblies (PIA)。

修正步驟

  1. 開啟 Office 2003 安裝精靈,選擇 「選擇應用程式的進階自訂」。
  2. 在功能樹中找到 .NET 可程式設計支援,選擇 「從本機執行所有程式」。
  3. 完成安裝後,回到 VS 專案重新加入參考,黃色驚嘆號即消失,Microsoft.Office.Interop.Excel 可正常使用。

Office 2003 進階自訂選項

啟用 .NET 可程式設計支援

經驗總結

此問題極易被忽略,且網路資訊多未點出核心原因。記錄於此,期望能提高搜尋命中率,讓後續開發者少走彎路。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved