Excelの数式をベースにしたプログラミング言語「Microsoft Power Fx」登場。オープンソースで公開予定。Microsoft Ignite 2021

今回は「Excelの数式をベースにしたプログラミング言語「Microsoft Power Fx」登場。オープンソースで公開予定。Microsoft Ignite 2021」についてご紹介します。

関連ワード (デバッグ、動作、条件等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


マイクロソフトは、Excelの数式をベースとしたプログラミング言語「Microsoft Power Fx」(以下、Power Fx)を発表しました。

Power Fxは、Power AppsやPower Automate、Power BI、Power Virtual Agentsなどから構成される同社のローコード/ノーコードツール群「Power Platform」のロジックの記述に用いられます。

Power Fxはマイクロソフトにとって初めてのローコード開発向けのプログラミング言語です。Excelの数式の知識をプログラミングに使えるため、多くの人にとってプログラミングのハードルを下げることになると説明されています。

また今年後半にはオープンソースとしてGitHubで公開され、誰でも利用や実装が可能になる予定です。

Excelには、文字列の長さを得るLen関数や文字列の一部を取り出すRight関数やLeft関数、条件判定を行うIf関数、条件に合致するデータを取り出すLookup関数など、さまざまな機能を備えた関数があります。

Power Fxでは主にこうした関数を用いて、必要な値を取得したり、アプリケーションの動作を変化させることになります。

下記の画面では、Power Fxによるif関数がアプリケーション画面に関連付けられており、if関数内で取得するスライドバーの値によってif関数の戻り値がホワイトもしくはブラックとなり、それによって画面の色が変化する、という動作が実現されます。

fig

例えば、データベースにある「Employee」テーブルの「First Name」フィールドから、ある値に一致するデータをLookup関数を用いて取得する、といったことがPower Fxで次のように記述できることが示されています。

ここではドット「.」によってLookup関数が拡張され、データベースのテーブルからフィールドへとデータソースをドリルダウンできるようになっています。

この数式を画面上の特定のフィールドに張り付ければ、そのフィールドにデータベースから選択された名前が表示される、ということになります。

Power Fxでは、このようにExcelと同様の関数を利用するだけでなく、Excelのセルに数式を入力すればすぐに結果が表示され、さまざまな数式が自動的に計算、再計算されるように、その動作もリアルタイムかつ非同期に行われるようになっています。

Power Fxのコードは、アプリケーション画面上の各コントロールのプロパティのように、コントロールに対してコードとなる数式を紐づけられるだけでなく、全体のコードをまとめてVisual Studio Codeなどの開発環境で通常のプログラミング言語のように編集することもできます。

これによりノンプログラマはExcelでセルに数式を書き込むように、画面上のコントロールに数式を書き込むことで開発を進められる一方、プログラミングに慣れているプログラマは、Visual StudioやVisual Studio CodeとGitHubなどを用いて効率的に開発やデバッグを進めることができるようになっています。

fig2

Power Fxはすでに、Power Appsで画面レイアウトを優先したアプリケーション開発を行う「キャンバスアプリ」の開発においてロジックの記述に使われており、今後Power Apps以外のPower Platformのツールなどでも使えるようになるとのこと。

Excelの数式は過去半年のあいだに強化が行われ、一般にプログラミング言語として満たすべき条件とされる「チューリング完全」になったことが示されていました。

参考:Excelの新機能「Lambda関数」によって「Excelの数式がチューリング完全になった」とナデラCEO。プログラミング言語としてのExcel数式であらゆる計算が可能に

これはPower Fx登場の伏線だったのかもしれません。

参考:Microsoft Power Fx overview

デバッグとは - コトバンク

ASCII.jpデジタル用語辞典 - デバッグの用語解説 - プログラムのミスや欠陥をチェックして、修正する作業のこと。プログラムの欠陥をバグ(虫)といい、直訳すると「バグの除去」。デバッグするための専用のソフトウェアをデバッガーという。ほとんどのソフトウェア開発ツールは、デバッガーの...

デバッグ - Wikipedia

デバッグ(debug)とは、コンピュータプログラムや電気機器中のバグ・欠陥を発見および修正し、動作を仕様通りのものとするための作業である。

デバッグとは - IT用語辞典 e-Words

デバッグ【debug】とは、コンピュータプログラムに潜む欠陥を探し出して取り除くこと。プログラムが仕様や開発者の意図に照らして誤った動作をする際に、そのような動作を引き起こすプログラム上の欠陥、誤りをバグ(bug:虫)という。テストなどによって発見された誤作動・不具合について、その原因やプログラム上での位置を探索・特定し、意図したとおり動作するように修正する作業のことをデバッグという。

デバッグとは?デバッグの基礎や仕事内容を初心者向けに解説 ...

デバッグとは、 プログラム中の間違っている点や不具合がある点(バグ)を見つけ出して、修正する一連の流れ のことです。

デバッグとは?その基本と身につけておきたい必要な知識の ...

デバッグはプログラミングを学び始めた方にとって、最初の関門といえる重要な作業です。自分でバグの原因を突きとめて処理できるようになれば、一人前のプログラマーに近づくことができます。 今回は、デバッグの基本的な知識から、簡単な対処法、デバッグ業務に関する求人について詳しく解説しています。IT技術系業務に関心のある

英語「debug」の意味・使い方・読み方 | Weblio英和辞書

1000万語収録!Weblio辞書 - debug とは【意味】害虫を除く,欠陥を直す... 【例文】debug (IMAP4_stream attribute)... 「debug」の意味・例文・用例ならWeblio英和・和英辞書

デバックとは|「分かりそう」で「分からない」でも「分かっ ...

デバッグは「バグの原因を探して取り除く作業」です。 あるいは、プログラムに限らず「原因は分からないけど、なんか、おかしい」な状況に対する原因の究明や不具合の解消を指して「デバッグ」と表現することもあります。

【C#】デバッグの手順とは?デバッガ・Debugクラスの使い方 …

C#でデバッグする方法が知りたい。 デバッグって何? どうやってやるの? debugクラスを使ってログを出してみたい こんにちは。文系出身で今年現役8年目エンジニアになる佐藤です。

【超初心者向け】エクセルVBAでデバッグをする方法を解説し …

エクセルVBAでマクロを作ると、思い通りに動かないことがとても多いです。 そういうときには、何がおかしいのか原因を探って修正する「デバッグ」作業が必要になります。 このページでは「デバッグ」をする基本...

【初心者向け】Eclipseでのデバッグ方法 - Qiita

 · バグの原因を調査し、修正するのが「デバッグ」。. プログラムにバグがあったときにの原因調査のために利用するツールが「デバッガ (debugger)」。. デバッガは、. - 「ブレークポイント」でプログラムを一時停止し. - その時点の変数などの値を見たり、1行ずつなど動かして、プログラムの動作を見て. - どこで想定と違う動きとなるか、といった調査を行う ...

COMMENTS


Recommended

TITLE
CATEGORY
DATE
M1 MacとmacOS Big Surフル対応のMacメンテナンスソフト「BuhoCleaner」を試す
IT関連
2021-03-02 02:40
Twitter、新型コロナワクチン誤情報のラベル付け開始 「ストライク制」適用も
アプリ・Web
2021-03-03 10:12
「チャージ完了してる?」 ポケモンGOでモバイルバッテリーの無料貸出クーポン配布 「ChargeSPOT」のポケストップで
くらテク
2021-03-18 13:23
アダストリア、需要予測AI活用で欠品リスクと在庫過剰の解消図る
IT関連
2023-07-29 03:20
請求書受領サービス「Bill One」、「freee会計」とAPI連携–月次決算を加速
IT関連
2022-04-15 12:47
ウマ娘に「体操服」着せられるアップデート配信
くらテク
2021-07-07 17:41
DXの基本–定義、事例、重要性などを解説
IT関連
2022-08-25 09:35
“デジタル小作人”から脱する手立てはあるのか–日本と中国の比較調査から読み解く
IT関連
2022-03-10 11:53
「Chrome」、サードパーティーCookieをブロックするテストを開始
IT関連
2024-01-06 02:10
Apple、M1搭載iMac 24インチを5月21日から店頭販売開始 Apple Storeでは全7色販売
IT関連
2021-05-20 15:26
庵野監督が構成した「仮面ライダー」50周年メモリアル映像、YouTubeで公開
くらテク
2021-04-05 11:58
YouTube、アプリの検索結果でも章飛ばしが可能に 自動翻訳されていれば検索できる機能も
アプリ・Web
2021-08-19 22:45
ガートナー、2022年の新興技術ハイプサイクルを発表–メタバースやNFTなど
IT関連
2022-08-13 21:52
名古屋大学、教育研究用・事務用端末のセキュリティ対策でカスペルスキーを導入
IT関連
2021-01-19 19:00