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

Excelファイルへ保存

SaveExcel メソッドにより、SPREADのデータを Excelファイルに保存することができます。
SPREADには、さまざまなオプションを備える複数の SaveExcel メソッドが用意されています。
たとえば、IncludeHeaders 列挙体の設定を使用すると、データとともにヘッダも保存するかどうかを指定できます。 ExcelSaveFlags列挙体のUseOOXMLFormatオプションを使用することにより、Open XML形式(xlsx)に保存できます。
※SPREADがエクスポート可能なのは、BIFF8形式(.xls)と Open XML形式(.xlsx)のExcelファイルです。
BIFF8形式はBIFF8形式は、Microsoft Excelのいくつかのバージョン (Excel 97、Excel 2000、Excel 2002(Office XP)、Excel 2003) を表すファイル形式です
 ID氏名カナ生年月日性別部署入社日メールアドレス
11001亀甲 滋万キコウ シゲマ1950/02/04A人事部1972/04/01sigema_kikou@abc.co.jp
21002寒田 希世カンダ キヨ1959/06/28B人事部1981/04/01kiyo_kanda@bbb.or.jp
31003小和瀬 澄オワセ キヨ1969/03/06A人事部1991/04/01kiyo_owase@aaa.co.jp
41004宇夫 早余子ウブ サヨコ1976/07/28O人事部1998/04/01sayoko_ubu@bbb.or.jp
51005宇田津 聖智ウダツ キヨトモ1965/09/04A営業部1987/04/01kiyotomo_udatu@abc.co.jp
61006茨城 昭児イバラキ ショウジ1963/04/28O営業部1985/04/01shouzi_ibaraki@xyz.ne.jp
71007石ヶ休 椎茄イシガキュウ シイナ1953/02/21O営業部1975/04/01siina_isigagyuu@abc.co.jp
81008赤司 恵治郎アカツカサ ケイジロウ1968/08/02O経理部1990/04/01keizirou_akatukasa@abc.co.jp
91009小橋 仰一オハシ ギョウイチ1972/03/02B経理部1994/04/01gyouiti_ohasi@abc.co.jp
101010一重 公大イチジュウ コウダイ1964/04/19B経理部1986/04/01koudai_itizyuu@xyz.ne.jp
111011稲並 勝五郎イナミ ショウゴロウ1962/02/18A営業部1984/04/01shougorou_inami@bbb.or.jp
121012穎原 紀代一エイハラ キヨカズ1965/02/13O営業部1987/04/01kiyokazu_eihara@bbb.or.jp
ファイルの種類

ソースコード

別ウィンドウで表示
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_saveexcelfile : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack)
        {
            return;
        }

        // データ連結
        System.Data.DataSet ds = new System.Data.DataSet();
        ds.ReadXml(MapPath("../App_Data/data.xml"));
        FpSpread1.DataSource = ds;

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

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

        // フォントサイズの設定
        sheet.DefaultStyle.Font.Size = FontUnit.Point(9);
        sheet.ColumnHeader.DefaultStyle.Font.Size = FontUnit.Point(9);
        sheet.RowHeader.DefaultStyle.Font.Size = FontUnit.Point(9);
        sheet.SheetCorner.DefaultStyle.Font.Size = FontUnit.Point(9);

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

        // 列幅の設定
        sheet.Columns[0].Width = 36;
        sheet.Columns[1].Width = 88;
        sheet.Columns[2].Width = 91;
        sheet.Columns[3].Width = 80;
        sheet.Columns[4].Width = 36;
        sheet.Columns[5].Width = 55;
        sheet.Columns[6].Width = 49;
        sheet.Columns[7].Width = 80;
        sheet.Columns[8].Width = 181;

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

        // 6列目(血液型)にフィルタリングの設定をします
        FarPoint.Web.Spread.HideRowFilter hf = new FarPoint.Web.Spread.HideRowFilter(sheet);
        FarPoint.Web.Spread.FilterColumnDefinition fcd = new FarPoint.Web.Spread.FilterColumnDefinition(5);
        hf.AddColumn(fcd);
        sheet.RowFilter = hf;
    }

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

        string filename;
        FarPoint.Excel.ExcelSaveFlags saveFlg = FarPoint.Excel.ExcelSaveFlags.NoFlagsSet;


        //  保存形式に関する設定
        if (DropDownList1.SelectedValue == "xls")
        {
            filename = "spread.xls";
        }
        else
        {
            filename = "spread.xlsx";
            saveFlg = saveFlg | FarPoint.Excel.ExcelSaveFlags.UseOOXMLFormat;
        }

        // チェックボックス選択状態に関連する設定
        if (CheckBox1.Checked)
        {
            saveFlg = saveFlg | FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered;
        }

        if (CheckBox2.Checked)
        {
            saveFlg = saveFlg | FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders;
        }

        // 保存を実行
        FpSpread1.SaveExcelToResponse(filename, saveFlg);
    }
}

Partial Class importexport_saveexcelfile
    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

        ' データ連結
        Dim ds As New System.Data.DataSet()
        ds.ReadXml(MapPath("../App_Data/data.xml"))
        FpSpread1.DataSource = ds

        ' SPREAD初期化
        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.DefaultStyle.Font.Size = FontUnit.Point(9)
        sheet.ColumnHeader.DefaultStyle.Font.Size = FontUnit.Point(9)
        sheet.RowHeader.DefaultStyle.Font.Size = FontUnit.Point(9)
        sheet.SheetCorner.DefaultStyle.Font.Size = FontUnit.Point(9)

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

        ' 列幅の設定
        sheet.Columns(0).Width = 36
        sheet.Columns(1).Width = 88
        sheet.Columns(2).Width = 91
        sheet.Columns(3).Width = 80
        sheet.Columns(4).Width = 36
        sheet.Columns(5).Width = 55
        sheet.Columns(6).Width = 49
        sheet.Columns(7).Width = 80
        sheet.Columns(8).Width = 181

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

        ' 6列目(血液型)にフィルタリングの設定をします
        Dim hf As New FarPoint.Web.Spread.HideRowFilter(sheet)
        Dim fcd As New FarPoint.Web.Spread.FilterColumnDefinition(5)
        hf.AddColumn(fcd)
        sheet.RowFilter = hf
    End Sub

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

        Dim filename As String
        Dim saveFlg As FarPoint.Excel.ExcelSaveFlags = FarPoint.Excel.ExcelSaveFlags.NoFlagsSet

        ' 保存形式に関する設定
        If DropDownList1.SelectedValue = "xls" Then
            filename = "spread.xls"
        Else
            filename = "spread.xlsx"
            saveFlg = saveFlg Or FarPoint.Excel.ExcelSaveFlags.UseOOXMLFormat
        End If

        ' チェックボックス選択状態に関連する設定
        If CheckBox1.Checked Then
            saveFlg = saveFlg Or FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered
        End If

        If CheckBox2.Checked Then
            saveFlg = saveFlg Or FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders
        End If

        ' 保存を実行
        FpSpread1.SaveExcelToResponse(filename, saveFlg)

    End Sub
End Class

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

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

<asp:Content ID="Content1" ContentPlaceHolderID="HeaderPlaceHolder1" runat="Server">
    <style type="text/css">
        .Exdiv {
            margin-top: 10px;
        }
    </style>
</asp:Content>


<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">

    <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>
    <div class="Exdiv">
        <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>
        <asp:CheckBox ID="CheckBox1" runat="server" Style="margin-left: 10px" Text="フィルター結果をそのまま" />
        <asp:CheckBox ID="CheckBox2" runat="server" Style="margin-left: 10px" Text="ヘッダを含める" />

    </div>
    <asp:Button ID="Button1" runat="server" Style="margin-top: 10px" Width="200px" Height="30px" Text="Excelファイルへエクスポート" OnClick="Button1_Click" />

</asp:Content>