SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(ComponentOne)(AD)

サーバーサイドでExcelファイルを読み書きするWebアプリケーションを作る

ASP.NET MVCやMicrosoft Azure Functions上でExcel処理を記述しよう

  • このエントリーをはてなブックマークに追加

 本記事で紹介するExcelコンポーネントは、サーバーサイドでExcelファイルを読み書きできる.NET Frameworkのライブラリです。これを利用してExcelファイルの作成・読み取りを行うASP.NETなWebアプリケーションを作成します。このアプリケーションは、クラウド上、例えばMicrosoftのPaaSや、サーバーレスアーキテクチャのサービスであるMicrosoft Azure Functionでも動作します。

  • このエントリーをはてなブックマークに追加

はじめに

 Excelコンポーネントは、Excelファイルの読み書きを行う.NET Framework上で動作するライブラリ、つまりdllファイルです。グレープシティ社の製品である「ComponentOne Studio」の中に含まれています。このライブラリを使用することにより、Excelファイルを活用したアプリケーションを開発できます。

 Excelファイルの読み書きでは、さまざまなタスクを実行できます。例えば、セルの値や数式の読み書き/レイアウトの設定/セルの結合/小計を作成するためのアウトラインレベルの設定/シートの作成/画像の挿入/コメントの挿入 等を行うことができます。

 今回は、このExcelコンポーネントを使って2種類の環境で動くサンプルを用意しました。前半は、 (1)Excelファイルから値を読み取りデータを登録する機能、(2)データの一覧が出力されたExcelファイルをダウンロードできる機能、の2つの機能をASP.NET MVC 5のWebアプリケーションで実装します。後半では、別のサンプルとして、簡単なExcelファイルの処理をクラウド上のMicrosoft Azure Functions上で動かします。

作成するWebアプリケーションの概要図
作成するWebアプリケーションの概要図
Azure Functions上での動作を表す概要図
Azure Functions上での動作を表す概要図

特徴・必要システム

 このライブラリの特徴は、サーバーにExcelをインストールする必要がないことと、メソッド一つでシート・セル・行・列等を扱う操作性の良さです。また、.NET Framework上で動作するため、ASP.NET WebForms/ASP.NET MVC 5/ASP.NET Core MVC(.NET Framework版)といったWebフレームワークだけでなく、WPFやWindows Forms上に組み込むことができます。.NET Frameworkが動作する環境であれば、クラウド上での稼働も可能です。また、グレープシティ社によるテクニカルサポートを受けられます。対応するExcelファイルの種類と必要システムは以下の通りです。

対応するExcelファイルの種類

  • Excel 97~Excel2003のバイナリファイル形式(.xls)
  • Excel 2010およびExcel 2007のXMLベースファイル形式(.xlsx)
  • Excel 2010およびExcel 2007のExcelテンプレート用のファイル形式(.xltx)
  • VBAマクロが有効なExcel 2007/2016のファイル形式(.xlsm)
  • (単純なカンマ区切り値CSV形式)

必要システム

  • OS:Windows 7~Windows Server 2016
  • Webサーバー:Internet Information Services
  • .NET Frameworkのバージョン:.NET Framework 4.5.2以上

 詳細は、ComponentOne Studioリリースノート/必要システムをご参照ください。

対象読者

  • Excelファイルを使ったWebアプリケーションの開発に興味のある方
  • ASP.NET開発者

必要な環境

  • ASP.NET MVC 5アプリケーションの開発ができる環境。今回作成するサンプルでは、筆者はVisual Studio 2017で動作確認しています。
  • Excel 2016(アプリケーションを使用するユーザーとしてExcelファイルの作成や閲覧に使用します。)

ComponentOne Studio for ASP.NET MVCとは

 Excelコンポーネントは、グレープシティ社が提供する有償製品「ComponentOne Studio for ASP.NET MVC」に含まれるコンポーネントの1つです。他に、データグリッド・チャート・帳票・ナビゲーション等のリッチなUIを提供するコンポーネントが含まれています。Excelの活用だけでなく、これらのコンポーネントを組み合わせることにより、開発生産性を向上させることができます。「ComponentOne Studio for ASP.NET MVC」は、ASP.NET Coreにも対応しています。ASP.NET Coreでは、先ほど挙げたUIを実現するためのTag Helperが含まれており、NuGetパッケージによりライブラリを参照できます。

注意:Excelコンポーネントは、.NET Core版には対応していないため、ASP.NET Core MVCフレームワークで使用するには.NET Frameworkを対象にする必要があります。「ComponentOne Studio for ASP.NET MVC」の他のコンポーネントは .NET Core版に対応しています。

次のページ
ASP.NET MVC 5でWebアプリケーションを作成する

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
ComponentZine(ComponentOne)連載記事一覧

もっと読む

この記事の著者

矢後 比呂加(ヤゴ ヒロカ)

 Microsoft MVP for Visual Studio and Development Technologies(https://mvp.microsoft.com/ja-jp/PublicProfile/5000246) シグマコンサルティング株式会社にて、Microsoft Azure・ASP...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/10168 2017/05/26 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング