Power Appsでテーブルデータを逆順に表示したいけど、Sort関数だけではうまくいかなくて困ったことはありませんか?実は、Sort関数を使っても想定した並び順にならないケースがあるんです。
今回は、データの形をそっくりそのまま逆から並べる方法について解説します。例えば、「Banana、Apple、Date」の順番で表示されているデータを、「Date、Apple、Banana」のように完全に逆順で表示したい場合の実装方法です。
Sort関数の限界とは?
例えば以下のテーブルデータをそのまま逆に並べたい場合はどうすればよいでしょうか?
SampleItems = Table(
{ Name: "Cherry" },
{ Name: "Elderberry" },
{ Name: "Banana" },
{ Name: "Apple" },
{ Name: "Date" }
);
Power Appsでデータを並び替える場合、Sort関数を使うのが一般的ですね。しかし、今回のようなデータをそのままSort関数で並び替えてしまうと、想定した並び順にはなりません。
ここで重要なのは、単純なソートではなく、データの順番をそのまま逆転させたいということです。
解決策:3つの関数を組み合わせる
そんな時に便利なのが、ForAll関数とSequence関数、そしてLastN関数を組み合わせて使う方法です。ちょっと複雑に見えるかもしれませんが、実際にやってみると意外とシンプルなんです。
実装手順
では、実際に実装してみましょう。
ステップ1: 連続数値テーブルの作成
まずはForAll関数とSequence関数、CountRows関数を使って、指定したテーブルの行数分の連続した数値のテーブルを作成します。
ForAll( Sequence(CountRows(SampleItems))
ステップ2: 逆順データの取得
続いてLastN関数とSequence関数の結果のバリューを使って、並び替えたいテーブルのデータを逆から順に取得します。
ForAll( Sequence(CountRows(SampleItems)),LastN(SampleItems,Value))
ここでのポイントは、以下のような仕組みになっていることです:
- 1週目は最後の行
- 2週目は最後から2番目と最後の行
↓この時点でのデータのイメージ

といったように、データが取得できるんですね。
ステップ3: 最終的な並び替え
そのため、赤色の箇所が最終的に取得できれば完成しそうです。LastN関数で取れた結果の一行目だけ取得できれば逆に並ぶため、First関数でLastN関数を囲って完成です。

最終的な式は以下になります。
ForAll( Sequence(CountRows(SampleItems)),First(LastN(SampleItems,Value)))
実際の動作確認
実装が完了したら、実際に動かしてみましょう。正しくデータが並び替えられていることが確認できるはずです。

ギャラリーコントロールに設定することで、視覚的にも分かりやすく逆順表示が実現できますね。
まとめ
いかがでしたでしょうか?Sort関数だけでは実現できない完全な逆順表示も、ForAll関数、Sequence関数、LastN関数の組み合わせを使えば簡単に実装できます。
特に、データの順番をそのまま保持しつつ逆転させたい場合には、この方法がとても有効です。ぜひ試してみてください。
YAML 形式のコードも用意しましたので、必要に応じてご利用ください。(動作の保証は致しかねます)
Screens:
Screen1:
Properties:
OnVisible: |-
=ClearCollect(SampleItems,Table(
{ Name: "Cherry" },
{ Name: "Elderberry" },
{ Name: "Banana" },
{ Name: "Apple" },
{ Name: "Date" }
));
Children:
- Gallery2:
Control: Gallery@2.15.0
Variant: Vertical
Properties:
Items: '=ForAll( Sequence(CountRows(SampleItems)),First(LastN(SampleItems,Value))) '
TemplateSize: =90
Width: =560
X: =33
Y: =387
Children:
- Label7:
Control: Label@2.5.1
Properties:
OnSelect: =Select(Parent)
Text: =ThisItem.Name
X: =18
Power Apps学習の決定版!コントロール別YouTube再生リスト完全ガイド
Power Appsを学習していて「どのコントロールをどう使えばいいのかわからない」「実際の使い方を動画で見ながら覚えたい」と思ったことはありませんか?
実践的な知識を効率よく身につけられるよう、現在公開している動画を整理したYouTube再生リスト集をご紹介します。



コメント