MESCIUS SPREAD for Windows Forms 17.0J サンプルコード集
状態の取得

IRowFilterインタフェースメンバであるIsFilteredメソッド呼び出しにより、指定した列での行フィルタリング状態(TrueまたはFalse)を取得することができます。

【実行例】

取得例

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

※出力例については本コンテンツ末尾を参照

 private void Form1_Load(object sender, System.EventArgs e)
 {

  // 自動フィルタリング機能を有効にします
  fpSpread1.ActiveSheet.Columns[0].AllowAutoFilter = true;
  // 自動フィルタのフィルタガジェットを表示します
  fpSpread1.ActiveSheet.AutoFilterMode = FarPoint.Win.Spread.AutoFilterMode.FilterGadget;

  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 void button1_Click(object sender, System.EventArgs e)
 {

   if (fpSpread1.ActiveSheet.RowFilter.IsFiltered(0))
      Console.WriteLine("1列目では行フィルタリングが実行されています");
   else
      Console.WriteLine("1列目では行フィルタリングが実行されていません");

 }
 Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load

  ' 自動フィルタリング機能を有効にします
  FpSpread1.ActiveSheet.Columns(0).AllowAutoFilter = True
  ' 自動フィルタのフィルタガジェットを表示します
  FpSpread1.ActiveSheet.AutoFilterMode = FarPoint.Win.Spread.AutoFilterMode.FilterGadget

  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

 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

   If FpSpread1.ActiveSheet.RowFilter.IsFiltered(0) Then
      Console.WriteLine("1列目では行フィルタリングが実行されています")
   Else
      Console.WriteLine("1列目では行フィルタリングが実行されていません")
   End If

 End Sub

出力例
1列目では行フィルタリングが実行されていません

 

 


© MESCIUS inc. All rights reserved.