Power Queryでは、列の値に基づいて行を含めたり除外したりできます。 フィルター処理された列には、列ヘッダーに小さなフィルター アイコン (
) が含まれています。 列フィルターを削除するには、列の横にある下矢印 [
を選択し、[ フィルターのクリア] を選択します。
オートフィルターを使用してフィルター処理する
オートフィルター機能を使用して、値の検索、表示、非表示を切り替えたり、フィルター条件をより簡単に指定したりできます。 既定では、最初の 1,000 個の個別の値のみが表示されます。 メッセージにフィルター 一覧が不完全である可能性があることを示す場合は、[ 詳細を読み込む] を選択します。 データの量によっては、このメッセージが複数回表示される場合があります。
- クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
- フィルター処理する列の横にある下矢印 [
を選択します。 - [ すべて選択 ] チェック ボックスをオフにして、すべての列の選択を解除します。
- フィルター処理する列値の [チェック] ボックスを選択し、[OK] を選択します。
テキスト フィルターを使用してフィルター処理する
[テキスト フィルター] サブメニューを使用して、特定のテキスト値で フィルター処理 できます。
クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
フィルター処理するテキスト値を含む列の横にある下矢印 [
を選択します。[ テキスト フィルター] を選択し、[ 等しい]、[ 等しくない]、[ 開始位置]、[開始位置]、[で 始まらない]、[ 終了位置]、[ 終わらない]、[ 含む]、および [ 含まない] の等しい型名を選択します。
[行のフィルター] ダイアログ ボックスで、次の 手順を実行 します。
- 基本モードを使用して、2 つの演算子と値を入力または更新します。
- 詳細モードを使用して、比較、列、演算子、および値の 2 つ以上の句を入力または更新します。
[OK] を選択します。
数値フィルターを使用してフィルター処理する
数値フィルター サブメニューを使用して、数値で フィルター処理 できます。
クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
フィルター処理する数値を含む列の下矢印 [
を選択します。[数値フィルター] を選択し、等しい、等しくない、より大きい、より大きいか等しい、より小さい、より小さいか等しい、または間の等しい型の名前を選択します。
[行のフィルター] ダイアログ ボックスで、次の 手順を実行 します。
- 基本モードを使用して、2 つの演算子と値を入力または更新します。
- 詳細モードを使用して、比較、列、演算子、および値の 2 つ以上の句を入力または更新します。
[OK] を選択します。
日付/時刻フィルターを使用してフィルター処理する
日付/時刻フィルター サブメニューを使用して、 日付/時刻値でフィルター処理 できます。
クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
フィルター処理する日付/時刻値を含む列の下矢印 [
を選択します。[ 日付/時刻フィルター] を選択し、[ 等しい]、[ 前]、[ 後]、[ 間]、[ 次へ]、[ 前へ]、[最 も早い]、[ 最も早い]、[最 も早くない]、[ 最新ではない]、[ カスタム フィルター] の等しい型名を選択します。
ヒント [ 年]、[ 四半期]、[ 月]、[ 週]、[ 日]、[ 時間]、[ 分]、[ 秒] を選択すると、定義済みのフィルターを簡単に使用できます。 これらのコマンドはすぐに機能します。
[ 行のフィルター]ダイアログ ボックスで、次の手順を実行します。
- 基本モードを使用して、2 つの演算子と値を入力または更新します。
- 詳細モードを使用して、比較、列、演算子、および値の 2 つ以上の句を入力または更新します。
[OK] を選択します。
複数の列をフィルター処理する
複数の列をフィルター処理するには、最初の列をフィルター処理してから、追加の列ごとに列フィルターを繰り返します。
次の数式バーの例では、 関数 Table.SelectRows はState と Year でフィルター処理されたクエリを返します。
null 値または空白値でフィルター処理する
セルに何も含めなかった場合、null 値または空白値が発生します。 null または空白の値を削除するには、次の 2 つの方法があります。
オートフィルターを使用する
- クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
- フィルター処理する列の横にある下矢印 [
を選択します。 - [ すべて選択 ] チェック ボックスをオフにして、すべての列の選択を解除します。
- [ 空の削除] を選択し、[ OK] を選択します。
このメソッドは、この数式を使用して列内の各値を調べます (列 "Name" の場合)。
Table.SelectRows(#"Changed Type", each ([Name] <> null and [Name] <> ""))
[空の行の削除] コマンドを使用する
- クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
- [ ホーム>行の削除>空白行の削除] を選択します。
このフィルターをクリアするには、[クエリ設定] の [適用されたステップ] の下にある対応するステップを削除します。
このメソッドは、次の式を使用して、行全体をレコードとして調べます。
Table.SelectRows(#"Changed Type", each not List.IsEmpty(List.RemoveMatchingItems(Record.FieldValues(_), {"", null})))
行の位置でフィルター処理する
位置による行のフィルター処理は、値による行のフィルター処理と似ていますが、値ではなくクエリ データ内の位置に基づいて行が含まれるか除外される点が異なります。
注
範囲またはパターンを指定すると、テーブルの最初のデータ行は行 1 (1) ではなく行 0 (0) になります。 行を指定する前に行位置を表示するインデックス列を作成できます。 詳細については、「インデックス列の追加」を参照してください。
上位の行を保持するには
- クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
- [ Home>Keep Rows>Keep top Rows] を選択します。
- [ 先頭行の保持 ] ダイアログ ボックスで、[ 行数] に数値を入力します。
- [OK] を選択します。
下の行を保持するには
- クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
- [ Home>Keep Rows>Keep Bottom Rows] を選択します。
- [ 下の行を保持 ] ダイアログ ボックスで、[ 行数] に数値を入力します。
- [OK] を選択します。
行の範囲を保持するには
データのテーブルが、固定レイアウトのレポートから派生する場合があります。 たとえば、最初の 5 行はレポート ヘッダーで、次に 7 行のデータが続き、その後にコメントを含むさまざまな行数が続きます。 ただし、データ行のみを保持する必要があります。
- クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
- [ Home>Keep Rows>Keep Range of Rows] を選択します。
- [ 行の範囲を保持 ] ダイアログ ボックスで、[ 先頭行 ] と [行 数] に数値を入力します。 この例に従う場合は、最初の行として 6 つ、行数として 7 と入力します。
- [OK] を選択します。
上位の行を削除するには
- クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
- [ ホーム>行の削除>上位行の削除] を選択します。
- [ 上位行の削除 ] ダイアログ ボックスで、[ 行数] に数値を入力します。
- [OK] を選択します。
下の行を削除するには
- クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
- [ ホーム>行の削除>下位行の削除] を選択します。
- [ 下位行の削除 ] ダイアログ ボックスで、[ 行数] に数値を入力します。
- [OK] を選択します。
代替行を削除してフィルター処理する
代替行でフィルター処理でき、代替行パターンを定義することもできます。 たとえば、テーブルには、各データ行の後にコメント行があります。 奇数行 (1、3、5 など) を保持しますが、偶数行 (2、4、6 など) を削除します。
クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。
[ ホーム>行の削除>代替行の削除] を選択します。
[ 代替行の削除 ] ダイアログ ボックスで、次のように入力します。
- 削除する最初の行 この行でカウントを開始します。 2 と入力すると、最初の行は保持されますが、2 番目の行は削除されます。
- 削除する行数 パターンの先頭を定義します。 「1」と入力すると、一度に 1 つの行が削除されます。
- 保持する行数 パターンの末尾を定義します。 「1」と入力した場合は、次の行 (3 行目) でパターンを続行します。
[OK] を選択します。
結果
Power Queryには、すべての行に従うパターンがあります。 この例では、奇数行が削除され、偶数行が保持されます。