2,251 views(since 2013/10/08)

Windows Azure のWebサイトでExcelを操作してダウンロード実験してみました。(Visaul Studio 2013 ASP.NET MVC5 + SpreadSheetGear)

概要

有料のExcel操作ツールでのSpreadSheetGear で Windows Azure Webサイトで実験してみました。

このツールのすばらしいところは、10万ちょいの開発ライセンスを買えばWebサーバでも使えること。(一部制限事項あり詳細は以下のサイトから)

http://www.xlsoft.com/jp/products/spreadsheetgear/

実験結果

Windows Azure Webサイトの環境にて、ASP.NET MVC5 (C#)にてサーバサイドで Excelを操作してダウンロード

SpreadSheetGear_0010

Excelファイルをダウンロードの結果

C#のプログラム通りにExcelが編集さされています。

SpreadSheetGear_0020

環境

  • Windows Azure Webサイト(無料)
  • Visual Studio 2013 Professional
    • ASP.NET MVC5
    • .NET Framework 4.5.1
  • SpreadSheetGear 2010

プログラムソース

Test.cshtml

@Html.ActionLink("Download", "Download", new { id = 1 })

@section scripts{
 @Html.Partial("~/views/Users/_Appli-a-ScriptsInclude-0.1.2.cshtml")
 }

HomeController.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace Appli_AWeb_MVC_Main.Controllers
{
public class HomeController : BaseController
{

public ActionResult Test()

{

ViewBag.ActiveCSS_Home_Test = CLASS_ACTIVE;
return View();
}
public FileResult Download(string id)
{
// Create a new empty workbook set.
SpreadsheetGear.IWorkbookSet workbookSet = SpreadsheetGear.Factory.GetWorkbookSet();
// Create a new empty workbook in the workbook set.
SpreadsheetGear.IWorkbook workbook = workbookSet.Workbooks.Add();
// Add a second worksheet.
workbook.Worksheets.Add();
// Rename worksheet "Sheet1" to "Hello"

var sheet1 = workbook.Worksheets["Sheet1"];
sheet1.Name = "Hello";
sheet1.Cells[0, 0].Value = "Test1";
sheet1.Select();
//sheet1.Cells[1, 1].Activate();
//workbook.ActiveWorksheet
var strFileName = Server.MapPath("~/App_Data/Test.xlsx");
workbook.SaveAs(strFileName, SpreadsheetGear.FileFormat.OpenXMLWorkbook);
workbookSet.Workbooks.Close();

//workbook = workbookSet.Workbooks.Open(sheet1);

return File(strFileName,
"application/vnd.ms-excel",
"Test.xlsx");

}

}

}

Filed Under: .NETAzure

About the Author

野呂清二(ご連絡はこちらまで (http://www.exceedone.co.jp/inquiry/)

Leave a Reply




If you want a picture to show with your comment, go get a Gravatar.