2011年11月2日水曜日

OpenXMLを使用して、サーバーサイドでExcelファイルを生成(4)

データ読み込み編

Imports System.IO
Imports OfficeOpenXml

Protected Sub Button1_Click (ByVal sender As Object, _
                                   ByVal e As System.EventArgs) Handles Button1.Click

       Dim strFileName As String = "existingFile.xlsx"
       Dim strFilePath As String = Server.MapPath(strFileName)
       Dim existingFile As FileInfo = New FileInfo(strFilePath)

       Using xlPackage As New ExcelPackage(existingFile)
           Dim worksheet As ExcelWorksheet = xlPackage.Workbook.Worksheets(1)
           Dim intCol As Integer = 1

           For intRow As Integer = 1 To 5
               Label1.Text &= worksheet.Cells(intRow, intCol).Value & "<br />"
           Next intRow
       End Using

End Sub

サンプルは単純にラベルへ書き込んでいますが、DataGridView等へデータを流すことも可能かと思います。
それから、計算式そのものを参照したいときは、「Formula」を使用します。「Value」では計算結果の値が返されます。