PowerApps の AddColumns、DropColumns、RenameColumns、および ShowColumns 関数AddColumns, DropColumns, RenameColumns, and ShowColumns functions in PowerApps

の追加、削除、名前の変更、選択により、テーブルの表示を調整します。Shapes a table by adding, dropping, renaming, and selecting its columns.

概要Overview

これらの関数は、列を調整することでテーブルの表示を調整します。These functions shape a table by adjusting its columns:

  • 複数の列を持つテーブルを単一列にし、LowerAbs といった単一列関数で使用できるようにします。Reduce a table that contains multiple columns down to a single column for use with single-column functions, such as Lower or Abs.
  • 計算列をテーブルに追加します (たとえば、QuantityUnit Price で乗算した結果を示す Total Price 列)。Add a calculated column to a table (for example, a Total Price column that shows the results of multiplying Quantity by Unit Price).
  • ユーザーに表示するため、または数式で使用するために、列の名前をよりわかりやすく変更します。Rename a column to something more meaningful, for display to users or for use in formulas.

テーブルは、文字列や数値と同様、PowerApps 内での値です。A table is a value in PowerApps, just like a string or a number. テーブルは数式内で引数として指定できるほか、関数から結果として返すことができます。You can specify a table as an argument in a formula, and functions can return a table as a result. このトピックで説明する関数は、テーブルを変更しません。The functions that this topic describes don't modify a table. その代わりに、引数としてテーブルを受け取り、変換を適用した新しいテーブルを返します。Instead they take a table as an argument and return a new table with a transform applied. 詳細については、テーブルの使用に関するページを参照してください。See working with tables for more details.

これらの関数を使用しても、データ ソースの列は変更できません。You can't modify the columns of a data source by using these functions. そのデータは、ソースで変更する必要があります。You must modify the data at its source. Collect 関数を使用して、コレクションに列を追加できます。You can add columns to a collection with the Collect function. 詳細については、データ ソースの使用に関するページを参照してください。See working with data sources for more details.

説明Description

AddColumns 関数は、テーブルに列を追加し、数式でその列内の値を定義します。The AddColumns function adds a column to a table, and a formula defines the values in that column. 既存の列は変更されません。Existing columns remain unmodified.

数式はテーブルの各レコードについて評価されます。The formula is evaluated for each record of the table.

現在処理中のレコードのフィールドを数式で利用できます。Fields of the record currently being processed are available within the formula. その他の値と同じように、名前で参照するだけです。You simply reference them by name as you would any other value. アプリ全体から、コントロール プロパティとその他の値も参照できます。You can also reference control properties and other values from throughout your app. 詳細については、後述する例とレコード スコープの操作を参照してください。For more details, see the examples below and working with record scope.

DropColumns 関数は、テーブルから列を除外します。The DropColumns function excludes columns from a table. その他すべての列は変更されません。All other columns remain unmodified. DropColumns は列を除外し、ShowColumns は列を表示します。DropColumns excludes columns, and ShowColumns includes columns.

RenameColumns 関数は、テーブルの列の名前を変更します。The RenameColumns function renames columns of a table. その他すべての列は元の名前を保持します。All other columns retain their original names.

ShowColumns 関数は、テーブルの列を表示し、その他すべての列を削除します。The ShowColumns function includes columns of a table and drops all other columns. ShowColumns を使用して、複数列テーブルから単一列テーブルを作成できます。You can use ShowColumns to create a single-column table from a multi-column table. ShowColumns は列を表示し、DropColumns は列を除外します。ShowColumns includes columns, and DropColumns excludes columns.

これらすべての関数の結果は、変換が適用された新しいテーブルになります。For all these functions, the result is a new table with the transform applied. 元のテーブルは変更されません。The original table isn't modified.

これらの関数は、データ ソースに対して使用した場合、委任できません。When used with a data source, these functions can't be delegated. データ ソースの先頭の部分のみが取得され、関数が適用されます。Only the first portion of the data source will be retrieved and then the function applied. 結果は完全でない場合があります。The result may not represent the complete story. 作成時に、この制限について通知し、可能であれば委任可能な代替関数への切り替えを提案する青い点が表示されます。A blue dot will appear at authoring time to remind you of this limitation and to suggest switching to delegable alternatives where possible. 詳細については、委任の概要に関する記事を参照してください。For more information, see the delegation overview.

構文Syntax

AddColumns( Table, ColumnName1, Formula1 [, ColumnName2, Formula2, ... ] )AddColumns( Table, ColumnName1, Formula1 [, ColumnName2, Formula2, ... ] )

  • Table - 必須。Table - Required. 操作の対象となるテーブル。Table to operate on.
  • ColumnName(s) - 必須。ColumnName(s) - Required. 追加する列の名前。Name(s) of the column(s) to add. この引数には、文字列を指定する必要があります (たとえば、二重引用符を含む "Name" など)。You must specify a string (for example, "Name" with double quotes included) for this argument.
  • Formula(s) - 必須。Formula(s) - Required. 各レコードについて評価する数式。Formula(s) to evaluate for each record. 結果は、対応する新しい列の値として追加されます。The result is added as the value of the corresponding new column. この数式では、テーブルの他の列を参照できます。You can reference other columns of the table in this formula.

DropColumns( Table, ColumnName1 [, ColumnName2, ... ] )DropColumns( Table, ColumnName1 [, ColumnName2, ... ] )

  • Table - 必須。Table - Required. 操作の対象となるテーブル。Table to operate on.
  • ColumnName(s) - 必須。ColumnName(s) - Required. 削除する列の名前。Name(s) of the column(s) to drop. この引数には、文字列を指定する必要があります (たとえば、二重引用符を含む "Name" など)。You must specify a string (for example, "Name" with double quotes included) for this argument.

RenameColumns( Table, OldColumneName, NewColumnName )RenameColumns( Table, OldColumneName, NewColumnName )

  • Table - 必須。Table - Required. 操作の対象となるテーブル。Table to operate on.
  • OldColumnName - 必須。OldColumnName - Required. 名前を変更する列の名前。Name of the column to rename. この名前は、文字列である必要があります (たとえば、二重引用符を含む "Name" など)。This name must be a string (for example "Name" with double quotes included).
  • NewColumnName - 必須。NewColumnName - Required. 置換後の名前。Replacement name. この引数には、文字列を指定する必要があります (たとえば、二重引用符を含む "Customer Name" など)。You must specify a string (for example, "Customer Name" with double quotes included) for this argument.

ShowColumns( Table, ColumnName1 [, ColumnName2, ... ] )ShowColumns( Table, ColumnName1 [, ColumnName2, ... ] )

  • Table - 必須。Table - Required. 操作の対象となるテーブル。Table to operate on.
  • ColumnName(s) - 必須。ColumnName(s) - Required. 表示する列の名前。Name(s) of the column(s) to include. この引数には、文字列を指定する必要があります (たとえば、二重引用符を含む "Name" など)。You must specify a string (for example, "Name" with double quotes included) for this argument.

Examples

このセクションの例では、次のテーブルにデータが含まれている IceCreamSales データ ソースを使用します。The examples in this section use the IceCreamSales data source, which contains the data in this table:

これらの例ではいずれも、IceCreamSales データ ソースは変更されません。None of these examples modify the IceCreamSales data source. 各関数は、データ ソースの値をテーブルに変換し、その値を結果として返します。Each function transforms the value of the data source as a table and returns that value as the result.

数式Formula 説明Description 結果Result
AddColumns( IceCreamSales, "Revenue", UnitPrice * QuantitySold )AddColumns( IceCreamSales, "Revenue", UnitPrice * QuantitySold ) 結果に Revenue 列を追加します。Adds a Revenue column to the result. 各レコードで UnitPrice * QuantitySold が評価され、その結果が新しい列に配置されます。For each record, UnitPrice * QuantitySold is evaluated, and the result is placed in the new column.
DropColumns( IceCreamSales, "UnitPrice" )DropColumns( IceCreamSales, "UnitPrice" ) 結果から UnitPrice 列を除外します。Excludes the UnitPrice column from the result. この関数は列の除外に使用し、ShowColumns は列の表示に使用します。Use this function to exclude columns, and use ShowColumns to include them.
ShowColumns( IceCreamSales, "Flavor" )ShowColumns( IceCreamSales, "Flavor" ) 結果に Flavor 列のみを表示します。Includes only the Flavor column in the result. この関数は列の表示に使用し、DropColumns は列の除外に使用します。Use this function include columns, and use DropColumns to exclude them.
RenameColumns( IceCreamSales, "UnitPrice", "Price")RenameColumns( IceCreamSales, "UnitPrice", "Price") 結果で UnitPrice 列の名前を変更します。Renames the UnitPrice colum in the result.
DropColumns(
RenameColumns(
AddColumns( IceCreamSales, "Revenue",
UnitPrice * QuantitySold ),
"UnitPrice", "Price" ),
"Quantity" )
DropColumns(
RenameColumns(
AddColumns( IceCreamSales, "Revenue",
UnitPrice * QuantitySold ),
"UnitPrice", "Price" ),
"Quantity" )
次のテーブル変換を、数式の内側から順に実行します。Performs the following table transforms in order, starting from the inside of the formula:
  1. UnitPrice * Quantity のレコードごとの計算に基づいて、Revenue 列を追加します。Adds a Revenue column based on the per-record calculation of UnitPrice * Quantity.
  2. UnitPrice という名前を Price に変更します。Renames UnitPrice to Price.
  3. Quantity 列を除外します。Excludes the Quantity column.
この順番は重要なので、注意してください。Note that order is important. たとえば、名前を変更した後は、UnitPrice を使用した計算ができません。For example, we can't calculate with UnitPrice after it has been renamed.

ステップ バイ ステップStep by step

  1. ギャラリーにテキストとイメージを表示する方法に関するページの最初の手順に従って、Inventory という名前のコレクションをインポートするか作成します。Import or create a collection named Inventory as the first subprocedure in Show text and images in a gallery describes.
  2. ボタンを追加し、OnSelect プロパティを次の数式に設定します。Add a button, and set its OnSelect property to this formula:

    ClearCollect(Inventory2, RenameColumns(Inventory, "ProductName", "JacketID"))ClearCollect(Inventory2, RenameColumns(Inventory, "ProductName", "JacketID"))

  3. F5 キーを押し、作成したボタンを選択してから、Esc キーを押して、デザイン ワークスペースに戻ります。Press F5, select the button that you just created, and then press Esc to return to the design workspace.
  4. [ファイル] メニューの [コレクション] を選択します。On the File menu, select Collections.
  5. Inventory2 という名前のコレクションを作成できたことを確認します。Confirm that you've created a collection, named Inventory2. 新しいコレクションには Inventory と同じ情報が含まれていますが、InventoryProductName という列は、Inventory2 では JacketID という名前になっています。The new collection contains the same information as Inventory except that the column named ProductName in Inventory is named JacketID in Inventory2.