2

次のようなExcelを作成しています。

     class Program
{
    private Excel.Application app = null;
    private Excel.Application worksheet = null;
    private Excel.Application workbook = null;
    private Excel.Application worksheet_range = null;

    //public Program()
    //{
    //    CreateExcelDoc();
    //}
    static void Main(string[] args)
    {
        Program obj = new Program();
        obj.CreateExcelDoc();
    }

    public void CreateExcelDoc()
    {
        try
        {
            app = new Excel.Application();
            if (app == null)
                return;
            app.Visible = true;
            workbook = app.Workbooks.Add(1);////error in this,saying "can not convert from Excel.Workbook to Excel.Application"

        }
        catch (Exception ex)
        {
            throw new Exception("CreateExcelDoc: Error" + ex.Message);
        }

    }
}

誰かが私が間違っている場所を教えてもらえますか? 注: 私はこれに従っています: http://msdn.microsoft.com/en-us/library/ms173186%28v=vs.80%29.aspx

素敵なリンク/解決策を送ってください。Windows 7 64 ビット OS を使用しています。

ありがとう。

4

1 に答える 1

3

この宣言を変更します。

    private Excel.Application app = null;
    private Excel.Application worksheet = null;
    private Excel.Application workbook = null;
    private Excel.Application worksheet_range = null;

に:

    private Excel.Application app = null;
    private Excel.Worksheet worksheet = null;
    private Excel.Workbook workbook = null;
    private Excel.Range worksheet_range = null;

次のコードを正確に実行することもできます。

    app.Visible = true; // or false if you don't want to show app.
    workbook  = app.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
    worksheet = (Worksheet)workbook.Worksheets[1];

    // Select the Excel cells, in the range c1 to c7 in the worksheet.
    worksheet_range  = worksheet.get_Range("C1", "C7");

編集

次のコードを使用してワークブックを保存できます。

    workbook.SaveAs(@"C:\XMLCopy.xls",
    Excel.XlFileFormat.xlXMLSpreadsheet, missing, missing,
    false, false, Excel.XlSaveAsAccessMode.xlNoChange,
    missing, missing, missing, missing, missing);

ただし、ワークブックの保存後にリソースを解放する方法を探してください。ファイル、アプリケーション、および関連するすべてのオブジェクトを閉じる必要があります。

于 2013-05-27T11:32:50.937 に答える