MESCIUS SPREAD for Windows Forms 17.0J サンプルコード集
フィルタリングの自動実行を制御する

フィルタリングされた状態では、セルの値が変更されるたびにフィルタリング処理が実行されます。シートのAutoFilterプロパティをFalseに設定することで、ユーザーが明示的にフィルタリングを実行しない限り、セルの値変更時にフィルタリング処理が実行されなくなります。

【実行例】

実行例

  • シート上にてフィルタリングされた行は一時的に非表示となるだけで、実際のデータには影響を与えません。そのため、Excelファイルへのエクスポート時には全ての行情報が出力されます。

private void Form1_Load(object sender, EventArgs e)
{
    // 自動的にフィルタリングを実行しない
    fpSpread1.ActiveSheet.AutoFilter = false;
    // 自動フィルタのフィルタガジェットを表示します
    fpSpread1.ActiveSheet.AutoFilterMode = FarPoint.Win.Spread.AutoFilterMode.FilterGadget;

    // 1列目の自動フィルタリング機能を許可
    fpSpread1.ActiveSheet.Columns[0].AllowAutoFilter = true;

    fpSpread1.ActiveSheet.Cells[0, 0].Value = "North";
    fpSpread1.ActiveSheet.Cells[1, 0].Value = "South";
    fpSpread1.ActiveSheet.Cells[2, 0].Value = "East";
    fpSpread1.ActiveSheet.Cells[3, 0].Value = "South";
    fpSpread1.ActiveSheet.Cells[4, 0].Value = "North";
    fpSpread1.ActiveSheet.Cells[5, 0].Value = "North";
    fpSpread1.ActiveSheet.Cells[6, 0].Value = "West";
    fpSpread1.ActiveSheet.Columns[0].Width = 80;
}
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    ' 自動的にフィルタリングを実行しない
    FpSpread1.ActiveSheet.AutoFilter = False
    ' 自動フィルタのフィルタガジェットを表示します
    FpSpread1.ActiveSheet.AutoFilterMode = FarPoint.Win.Spread.AutoFilterMode.FilterGadget

    ' 1列目の自動フィルタリング機能を許可
    FpSpread1.ActiveSheet.Columns(0).AllowAutoFilter = True

    FpSpread1.ActiveSheet.Cells(0, 0).Value = "North"
    FpSpread1.ActiveSheet.Cells(1, 0).Value = "South"
    FpSpread1.ActiveSheet.Cells(2, 0).Value = "East"
    FpSpread1.ActiveSheet.Cells(3, 0).Value = "South"
    FpSpread1.ActiveSheet.Cells(4, 0).Value = "North"
    FpSpread1.ActiveSheet.Cells(5, 0).Value = "North"
    FpSpread1.ActiveSheet.Cells(6, 0).Value = "West"
    FpSpread1.ActiveSheet.Columns(0).Width = 80
End Sub

 

 


© MESCIUS inc. All rights reserved.