最新版 SPREAD for ASP.NET 10.0Jのデモアプリケーションはこちら

列フッタ

シート下部に任意のテキストや数式を設定したフッタを表示することができます。 フッタはヘッダ同様、セルの結合やスタイル(背景色など)の設定が可能です。
非スクロール領域として、集計結果などの表示に利用できます。
 製品ID製品分類製品名4月5月6月7月8月9月
110001乳製品酪農ミルク550050004500600055005000
220001清涼飲料水いよかんドリンク100030002700270010003000
320002清涼飲料水ぶどうジュース300035004800480030003500
420003清涼飲料水マンゴードリンク20001000500105020001000
530001ビール激辛ビール5500800085001000055008000
630002ビールモルトビール300035002780400030003500
720004清涼飲料水ぶどうの街500300200700500300
830003ビールオリエントの村800095009580900080009500
940002焼酎吟醸 ほめごろし600070009000950060007000
1040003焼酎大吟醸 オリエント100050006000500010005000
 
製品数合計
17517406308860341748825198060299
   

ソースコード

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

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

        // SPREADの設定
        InitSpread(FpSpread1);

        // シート設定
        InitSpreadStyles(FpSpread1.Sheets[0]);
    }

    private void InitSpread(FarPoint.Web.Spread.FpSpread spread)
    {
        //データ連結
        System.Data.DataSet ds = new System.Data.DataSet();
        ds.ReadXml(MapPath("../App_Data/datanum3.xml"));
        spread.DataSource = ds;

        spread.CssClass = "spreadStyle";
        spread.UseClipboard = false;
    }

    private void InitSpreadStyles(FarPoint.Web.Spread.SheetView sheet)
    {
        // フォントサイズの設定
        sheet.DefaultStyle.Font.Size = FontUnit.Parse("80%");
        sheet.ColumnHeader.DefaultStyle.Font.Size = FontUnit.Parse("80%");
        sheet.RowHeader.DefaultStyle.Font.Size = FontUnit.Parse("80%");
        sheet.SheetCorner.DefaultStyle.Font.Size = FontUnit.Parse("80%");
        sheet.ColumnFooter.DefaultStyle.Font.Size = FontUnit.Parse("80%");

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

        // 列幅の設定
        sheet.Columns[0].Width = 45;
        sheet.Columns[1].Width = 85;
        sheet.Columns[2].Width = 140;
        sheet.Columns[3].Width = 40;
        sheet.Columns[4].Width = 65;
        sheet.Columns[5].Width = 65;
        sheet.Columns[6].Width = 65;
        sheet.Columns[7].Width = 65;
        sheet.Columns[8].Width = 65;
        sheet.Columns[9].Width = 65;

        // 3列目を非表示
        sheet.Columns[3].Visible = false;

        // 列フッターを表示
        sheet.ColumnFooter.Visible = true;
        sheet.ColumnFooter.RowCount = 2;
        sheet.ColumnFooter.Rows[0].BackColor = System.Drawing.Color.Orange;
        sheet.ColumnFooter.Cells[0, 0].Value = "製品数";
        sheet.ColumnFooter.Cells[0, 0].ColumnSpan = 3;
        sheet.ColumnFooter.Cells[1, 0].ColumnSpan = 3;
        sheet.ColumnFooter.Cells[0, 4].Value = "合計";
        sheet.ColumnFooter.Cells[0, 4].ColumnSpan = 6;

        // 列フッターに製品数を表示
        sheet.Columns[0].AggregationType = FarPoint.Web.Spread.Model.AggregationType.CountA;

        // 列フッターに合計を表示
        sheet.Columns[4, 9].AggregationType = FarPoint.Web.Spread.Model.AggregationType.Sum;
    }
}
Partial Class rowcolcell_columnfooter
    Inherits System.Web.UI.Page

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

        ' SPREADの設定
        InitSpread(FpSpread1)

        ' シート設定
        InitSpreadStyles(FpSpread1.Sheets(0))
    End Sub

    Private Sub InitSpread(ByVal spread As FarPoint.Web.Spread.FpSpread)
        'データ連結
        Dim ds As New System.Data.DataSet()
        ds.ReadXml(MapPath("../App_Data/datanum3.xml"))
        spread.DataSource = ds

        spread.CssClass = "spreadStyle"
        spread.UseClipboard = False
    End Sub

    Private Sub InitSpreadStyles(ByVal sheet As FarPoint.Web.Spread.SheetView)
        ' フォントサイズの設定
        sheet.DefaultStyle.Font.Size = FontUnit.Parse("80%")
        sheet.ColumnHeader.DefaultStyle.Font.Size = FontUnit.Parse("80%")
        sheet.RowHeader.DefaultStyle.Font.Size = FontUnit.Parse("80%")
        sheet.SheetCorner.DefaultStyle.Font.Size = FontUnit.Parse("80%")
        sheet.ColumnFooter.DefaultStyle.Font.Size = FontUnit.Parse("80%")

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

        ' 列幅の設定
        sheet.Columns(0).Width = 45
        sheet.Columns(1).Width = 85
        sheet.Columns(2).Width = 140
        sheet.Columns(3).Width = 40
        sheet.Columns(4).Width = 65
        sheet.Columns(5).Width = 65
        sheet.Columns(6).Width = 65
        sheet.Columns(7).Width = 65
        sheet.Columns(8).Width = 65
        sheet.Columns(9).Width = 65

        ' 3列目を非表示
        sheet.Columns(3).Visible = False

        ' 列フッターを表示
        sheet.ColumnFooter.Visible = True
        sheet.ColumnFooter.RowCount = 2
        sheet.ColumnFooter.Rows(0).BackColor = System.Drawing.Color.Orange
        sheet.ColumnFooter.Cells(0, 0).Value = "製品数"
        sheet.ColumnFooter.Cells(0, 0).ColumnSpan = 3
        sheet.ColumnFooter.Cells(1, 0).ColumnSpan = 3
        sheet.ColumnFooter.Cells(0, 4).Value = "合計"
        sheet.ColumnFooter.Cells(0, 4).ColumnSpan = 6

        ' 列フッターに製品数を表示
        sheet.Columns(0).AggregationType = FarPoint.Web.Spread.Model.AggregationType.CountA

        ' 列フッターに合計を表示
        sheet.Columns(4, 9).AggregationType = FarPoint.Web.Spread.Model.AggregationType.Sum
    End Sub
End Class

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

<%@ 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">
    <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>