簡體   English   中英

從C#導出到Excel

[英]Export to Excel from C#

我正在嘗試從C#將數據寫入Excel,但是在調試時出現異常:

代碼:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Excel = Microsoft.Office.Interop.Excel;
namespace ConsoleApplication3
{
   class Program
  {
    static void Main(string[] args)
    {
        Excel.Application excelapp;
        Excel.Window excelWindow;
        Excel.Workbooks excelappworkbooks;
        Excel.Workbook excelappworkbook;
        Excel.Sheets excelsheets;
        Excel.Worksheet excelworksheet;
        Excel.Range excelcells;
        excelapp = new Excel.Application();
        excelapp.Visible = true;

        excelappworkbooks = excelapp.Workbooks;

        excelappworkbook = excelapp.Workbooks.Open(@"C:\Documents and Settings\дима\Мои документы\Visual Studio 2010\Projects\ConsoleApplication3\ConsoleApplication3\bin\Debug\a.xls",
                           Type.Missing, Type.Missing, Type.Missing,
         "WWWWW", "WWWWW", Type.Missing, Type.Missing, Type.Missing,
          Type.Missing, Type.Missing, Type.Missing, Type.Missing,
          Type.Missing, Type.Missing);

        excelsheets = excelappworkbook.Worksheets;

        excelworksheet = (Excel.Worksheet)excelsheets.get_Item(1);
        excelcells = excelworksheet.get_Range("A1", "A1");

        excelcells.Value2 = 10.5;
       }
    }
  }
 }

看起來像類型庫沖突。 也許您安裝了多個版本。 請檢查您是否對所需的lib類型有引用

9.0 Excel 2000

10.0 Excel 2002中

11.0 Excel 2003

12.0 Excel 2007

14.0 Excel 2010

參考更改后,請清潔溶液並進行完全重新編譯。

這並不是真正地直接回答問題,但是我已經看到很多人都在努力通過COM接口控制Excel。

我從TMS Software獲得了一個名為FlexCel的庫,它使您可以完全用代碼創建或操作Excel工作表,甚至不需要在計算機上安裝Excel。

它還具有許多其他有用的功能(編寫PDF文件,從Excel模板執行復雜的報告等)。

我應該指出,除了成為滿意的用戶外,我與公司沒有任何聯系。

您可以嘗試以下方法,讓我知道。 以下代碼應在C#3.0中運行

excelcells = excelworksheet.get_Range("A1", Type.Missing);

如果您使用的是C#4.0,請使用以下命令

excelcells = excelworksheet.get_Range("A1");

也要始終使用try / catch塊編寫代碼。

嘗試以下操作:使用添加刪除程序>轉到選項卡更改或刪除程序轉到Microsoft Office Professional2003。單擊鏈接“單擊此處以獲取支持信息”。 使用修復按鈕。

這對我有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM