MESCIUS SPREAD for ASP.NET 10.0J サンプルコード集
コードでソートする(複数キーの指定)

各キーに対応するSortInfoオブジェクトの配列を作成し、行をソートする場合はSortRowsメソッド、列をソートする場合はSortColumnsメソッドの引数に指定します。

実行例:

第1キー:1列目(昇順)、第2キー:2列目(昇順)で行をソートしました。

空白(未入力)セルは、昇順/降順ともに最後に表示されます。
SetTestData(FpSpread1.Sheets[0]);
SortInfo[] sinfos = {
    new SortInfo(0, true),//1列目を昇順
    new SortInfo(1, true) //2列目を昇順
};
FpSpread1.Sheets[0].SortRows(0, FpSpread1.Sheets[0].RowCount, sinfos);
SetTestData(FpSpread1.Sheets(0))
Dim sinfos As SortInfo() = {
    New SortInfo(0, True), '1列目を昇順
    New SortInfo(1, True)  '2列目を昇順
}
FpSpread1.Sheets(0).SortRows(0, FpSpread1.Sheets(0).RowCount, sinfos)

この例では、テストデータの生成に以下のメソッドを使用しています。

public void SetTestData(SheetView sheet)
{
    sheet.RowCount = 10;
    string tab = "\t", ent="\r\n";
    string data = "2015/12/1" + tab + "ZZZ" + tab + "1000" + ent
                     + "2016/3/31" + tab + "YYY" + tab + "2000" + ent
                     + "2016/3/31" + tab + "XXX" + tab + "3000" + ent;
    sheet.SetClip(0, 0, 3, 3, data);
    DateTimeCellType dateCell = new DateTimeCellType() { FormatString = "yyyy-M-d" };
    sheet.Columns[0].CellType = dateCell;
}
Public Sub SetTestData(sheet As SheetView)
    sheet.RowCount = 10
    Dim tab As String = vbTab, ent As String = vbNewLine
    Dim data As String = "2015/12/1" + tab + "ZZZ" + tab + "1000" + ent _
                                + "2016/3/31" + tab + "YYY" + tab + "2000" + ent _
                                + "2016/3/31" + tab + "XXX" + tab + "3000" + ent
    sheet.SetClip(0, 0, 3, 3, data)
    Dim dateCell As New DateTimeCellType() With {.FormatString = "yyyy-M-d"}
    sheet.Columns(0).CellType = dateCell
End Sub

 

 


© MESCIUS inc. All rights reserved.