フィルタ actionを使って、特定テーブルまたはワークシートの列からデータをフィルタします。

考慮事項

自動化を展開してテーブルまたはワークシートからデータをフィルターする際に、次のいずれかの条件が発生した場合、エラーが表示されます。
  • 不正なテーブル名またはカラム名/位置を提供した場合。

    例えば、Excel のテーブルは MonthlySales と名付けられていますが、月次売上高 (スペースあり)を入力します。

  • 提供されたセッション名は、開く actionで使用されているものと一致しません。
  • 指定された Excel スプレッドシート名またはセル範囲は存在しません。

    例えば、Sheet2を入力すると、Sheet1のみが存在する場合や、シートに列 A–C のみがあるときにB2:D4を入力します。

  • フィルタータイプと列データの間にデータ型の不一致があります。

    例えば、指定されたテーブルの列 5月 には 高、低 のようなテキスト値が含まれていますが、あなたは 150より大きい を使用します。

  • アクセスしようとしているファイルは閉じているか、ロックされているか、アクセスできません。
  • 既存のフィルターと新しいフィルター設定の間に競合があります。
フィルタ結果は変数として保存されず、指定した Microsoft Excel スプレッドシートに直接反映されます。

手順

  1. フィルター actionExcelノードからアクションパレットにダブルクリックまたはドラッグします。
  2. 以下のいずれかのタブをクリックします。
    • Table
      1. テーブル名: データをフィルタするテーブルの名前を指定します。
        注: テーブル名は文字列値であり、データ テーブル名ではありません。Excel のテーブル名の取得方法については、「Rename an Excel table」を参照してください。
      2. フィルタ対象 フィールドを使用して、データをフィルタするテーブルの列を指定します。
        • 列名: 列名を指定します。
        • 列の位置: 列の位置を指定します。
        たとえば、月例販売というテーブルに次の 3 つの列があるとします。 4 月5 月6 月。 テーブルの 5 月 列のデータにフィルタをかけたい場合は、列名 フィールドに5 月と入力するか、列の位置 フィールドに2と入力します。
    • ワークシート
      1. ワークシート名: データをフィルタするテーブルの名前を指定します。
      2. 指定したワークシート内の既存のフィルタを削除する場合は、シートから既存のフィルタを削除する チェックボックスを選択します。
      3. セルの範囲 ドロップダウン メニューを使用して、次のいずれかのセルの範囲を指定します。
        • すべてのセル: ワークシート内のすべてのセルでデータをフィルタします。
        • 固有: 範囲 フィールドにセルの範囲を入力します。

          たとえば、次のような 5 つの列を含むワークシートがあるとします。 A、B、C、D、E の列があります。2 列目から 4 列目までのデータをフィルタする場合は、範囲 フィールドにB2:D4と入力します。

      4. フィルタ対象 フィールドを使用して、データをフィルタするテーブルの列を指定します。
        • 列名: 列名を指定します。
        • 列の位置: 列の位置を指定します。
  3. フィルタ フィールドを使用して、次のいずれかのタブを選択します。
      • 数値: 指定した列に数値データが含まれている場合。
        ドロップダウン メニューをクリックして次のフィルタのいずれかを選択します。
        • 等しい: 指定した値と等しいデータをフィルタします。
        • 等しくない: 指定した値と等しくないデータをフィルタします。
        • より大きい: 指定した値より大きいデータをフィルタします。
        • 以上: 指定した値以上のデータをフィルタします。
        • より小さい: 指定した値より小さいデータをフィルタします。
        • 以下: 指定した値以下のデータをフィルタします。
        • 範囲: 指定した 2 つの値の間のデータをフィルタします。
      • テキスト: 指定した列にテキスト データが含まれている場合。
        ドロップダウン メニューをクリックして次のフィルタのいずれかを選択します。
        • 次から始まる: 指定した値で始まるデータをフィルタします。
        • 次で終わる: 指定した値で終わるデータをフィルタします。
        • 含む: 指定した値を含むデータをフィルタします。
        • 含まない: 指定した値を含まないデータをフィルタします。

        前述の 月例販売 テーブルの例から、5 月 列の目標数 150 より大きいデータのみを表示するシナリオを考えてみましょう。 したがって、ステップ 3 では、列名 を選択し、5 月と入力します。 次に 数値 > より大きい オプションを使用し、フィールドに150と入力して列の値をフィルタできます。

  4. [開く] action でブックを開く際に使用したセッション名を入力します。

    変数 タブをクリックして、既存の Excel の高度な操作のセッション変数を選択することもできます。

Monthly Sales.xlsというタイトルの Excel ワークブックがあり、5月の列と7月の列をフィルタリングし、値が150より大きい行のみを表示するシナリオを想定しましょう。
  1. Excel の package から 開く action を使用して、ブックを開きます。
  2. セッション名にExcelSession1を指定します。
  3. フィルター actionを自動化スクリプトにドラッグ&ドロップします。
    1. テーブル > テーブル名月次売上を入力してください。
    2. フィルタ > 列名を選択し、5月を入力してください。
  4. 別のフィルター actionを自動化スクリプトにドラッグ&ドロップします。
    1. テーブル > テーブル名月次売上を入力してください。
    2. フィルター > 列名を選択し、7月を入力してください。
  5. フィルターフィールドを使用して、以下を選択します。
    1. フィルタータイプNumberを選択します。
    2. ドロップダウン メニューをクリックし、より大きいを選択します。
    3. 値フィールドに 150 と入力します。
  6. セッション名フィールドにExcelSession1と入力します。
  7. 保存 をクリックします。

この自動化を実行すると、Excel シートには値が150より大きい5月7月の列のみが表示されます。