ナビゲーション リンクのスキップ
 新機能 の展開 新機能
 InputMan連携 の展開 InputMan連携
 マルチタッチ機能 の展開 マルチタッチ機能
 セル、行、列、ヘッダ の展開 セル、行、列、ヘッダ
 シート の展開 シート
 スタイル の展開 スタイル
 選択 の展開 選択
 セル型 の展開 セル型
 編集 の展開 編集
 ソート の展開 ソート
 フィルタリング の展開 フィルタリング
 グループ化 の展開 グループ化
 ページング の展開 ページング
 スクロール の展開 スクロール
 データ連結 の展開 データ連結
 階層表示 の展開 階層表示
 コマンドバー の展開 コマンドバー
 チャート の展開 チャート
 数式 の展開 数式
 インポート/エクスポート の縮小 インポート/エクスポート
 クライアント側スクリプト の展開 クライアント側スクリプト

Excelファイルの読込

インポートボタンを押下すると、Open XML形式のファイルをSPREADへロードします。
クリアボタンを押下するとSPREADのデータがクリアされます。

※SPREADがインポート可能なのは、BIFF8形式(.xls)と Open XML形式(.xlsx)のExcelファイルです。
BIFF8形式はBIFF8形式は、Microsoft Excelのいくつかのバージョン (Excel 97、Excel 2000、Excel 2002(Office XP)、Excel 2003) を表すファイル形式です
ファイルの種類
 ABCD
1    
2    
3    

ソースコード

別ウィンドウで表示
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class importexport_openexcelfile : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack)
        {
            return;
        }

        // 初期化
        InitSpread(FpSpread1.Sheets[0]);
    }

    private void InitSpread(FarPoint.Web.Spread.SheetView sheet)
    {
        // SPREAD設定
        FpSpread1.CommandBar.Visible = false;
        FpSpread1.CssClass = "spreadStyle";
        FpSpread1.UseClipboard = false;

        // シート設定
        sheet.PageSize = sheet.RowCount;

        // 縦方向の揃え位置を中央に設定
        sheet.DefaultStyle.VerticalAlign = VerticalAlign.Middle;
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        // クライアント側の変更を確定
        FpSpread1.SaveChanges();

        bool ret;
        string filepath = Server.MapPath("~/App_Data/");
        string filename;

        if (DropDownList1.SelectedValue == "xls")
        {
            filename = filepath + "spread.xls";
        }
        else
        {
            filename = filepath + "spread.xlsx";
        }

        // Execlファイルよりデータを読み込み
        try
        {
            // Excelファイルからインポート
            ret = FpSpread1.OpenExcel(filename, FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders);

            if (ret == false)
            {
                Response.Write("エラー:ファイルを開けません。ファイルパス:" + filepath);
            }
            else
            {
                InitSpread(FpSpread1.Sheets[0]);
            }
        }
        catch (System.Exception ex)
        {
            Response.Write(ex.Message.ToString());
        }
    }

    protected void Button2_Click(object sender, EventArgs e)
    {
        // クライアント側の変更を確定
        FpSpread1.SaveChanges();

        // Spreadコントロールをクリア
        FpSpread1.Reset();

        // 初期化
        FpSpread1.CommandBar.Visible = false;
        FpSpread1.CssClass = "spreadStyle";
        FpSpread1.UseClipboard = false;
        FarPoint.Web.Spread.SheetView wkSheet = new FarPoint.Web.Spread.SheetView();
        FpSpread1.Sheets.Add(wkSheet);
    }

    protected void Button3_Click(object sender, EventArgs e)
    {
        // クライアント側の変更を確定
        FpSpread1.SaveChanges();

        string filepath = Server.MapPath("~/App_Data/");
        string filename;

        Response.ContentType = "application/VND.ms-excel";

        if (DropDownList1.SelectedValue == "xls")
        {
            Response.AddHeader("Content-Disposition", "attachment;filename=spread.xls");
            filename = filepath + "spread.xls";
        }
        else
        {
            Response.AddHeader("Content-Disposition", "attachment;filename=spread.xlsx");
            filename = filepath + "spread.xlsx";
        }
        
        Response.Flush();
        Response.WriteFile(filename);
        Response.End();
    }
}

Partial Class importexport_openexcelfile
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
        If IsPostBack Then
            Return
        End If

        ' 初期化
        InitSpread(FpSpread1.Sheets(0))
    End Sub

    Private Sub InitSpread(sheet As FarPoint.Web.Spread.SheetView)
        ' SPREAD設定
        FpSpread1.CommandBar.Visible = False
        FpSpread1.CssClass = "spreadStyle"
        FpSpread1.UseClipboard = False

        ' シート設定
        sheet.PageSize = sheet.RowCount

        ' 縦方向の揃え位置を中央に設定
        sheet.DefaultStyle.VerticalAlign = VerticalAlign.Middle
    End Sub

    Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
        ' クライアント側の変更を確定
        FpSpread1.SaveChanges()

        Dim ret As Boolean
        Dim filepath As String = Server.MapPath("~/App_Data/")
        Dim filename As String

        If DropDownList1.SelectedValue = "xls" Then
            filename = filepath & "spread.xls"
        Else
            filename = filepath & "spread.xlsx"
        End If

        ' Execlファイルよりデータを読み込み
        Try
            ' Excelファイルからインポート
            ret = FpSpread1.OpenExcel(filename, FarPoint.Excel.ExcelOpenFlags.RowAndColumnHeaders)

            If ret = False Then
                Response.Write("エラー:ファイルを開けません。ファイルパス:" & filepath)
            Else
                InitSpread(FpSpread1.Sheets(0))
            End If
        Catch ex As System.Exception
            Response.Write(ex.Message.ToString())
        End Try
    End Sub

    Protected Sub Button2_Click(sender As Object, e As System.EventArgs) Handles Button2.Click
        ' クライアント側の変更を確定
        FpSpread1.SaveChanges()

        ' Spreadコントロールをクリア
        FpSpread1.Reset()

        ' 初期化
        FpSpread1.CommandBar.Visible = False
        FpSpread1.CssClass = "spreadStyle"
        FpSpread1.UseClipboard = False
        Dim wkSheet As New FarPoint.Web.Spread.SheetView()
        FpSpread1.Sheets.Add(wkSheet)
    End Sub

    Protected Sub Button3_Click(sender As Object, e As System.EventArgs) Handles Button3.Click
        ' クライアント側の変更を確定
        FpSpread1.SaveChanges()

        Dim filepath As String = Server.MapPath("~/App_Data/")
        Dim filename As String

        Response.ContentType = "application/VND.ms-excel"

        If DropDownList1.SelectedValue = "xls" Then
            Response.AddHeader("Content-Disposition", "attachment;filename=spread.xls")
            filename = filepath & "spread.xls"
        Else
            Response.AddHeader("Content-Disposition", "attachment;filename=spread.xlsx")
            filename = filepath & "spread.xlsx"
        End If

        Response.Flush()
        Response.WriteFile(filename)
        Response.End()
    End Sub
End Class

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" 
         CodeFile="openexcelfile.aspx.cs" Inherits="importexport_openexcelfile" %>

<%@ Register Assembly="FarPoint.Web.SpreadJ" Namespace="FarPoint.Web.Spread" TagPrefix="FarPoint" %>

<asp:Content ID="Content1" ContentPlaceHolderID="HeaderPlaceHolder1" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <asp:Label ID="Label1" runat="server" Text="ファイルの種類"></asp:Label>
    <asp:DropDownList ID="DropDownList1" runat="server">
        <asp:ListItem Value="xls">BIFF8(xls)</asp:ListItem>
        <asp:ListItem Value="xlsx">Open XML(xlsx)</asp:ListItem>
    </asp:DropDownList>
    <br />
    <asp:Button ID="Button1" runat="server" Text="Excelファイルのインポート" 
        onclick="Button1_Click" />
    <asp:Button ID="Button2" runat="server" Text="SPREADのクリア" 
        onclick="Button2_Click" />
    <asp:Button ID="Button3" runat="server" Text="インポートファイルのダウンロード" 
        onclick="Button3_Click" />
    <FarPoint:FpSpread ID="FpSpread1" runat="server" BorderColor="#A0A0A0" BorderStyle="Solid"
        BorderWidth="1px">
        <CommandBar BackColor="#F6F6F6" ButtonFaceColor="Control" ButtonHighlightColor="ControlLightLight"
            ButtonShadowColor="ControlDark">
        </CommandBar>
        <Sheets>
            <FarPoint:SheetView SheetName="Sheet1">
            </FarPoint:SheetView>
        </Sheets>
    </FarPoint:FpSpread>
</asp:Content>