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
メタのVRプラットフォームHorizon Worlds、2021年12月正式公開から月間ユーザー数が10倍の30万人に
IT関連
2022-02-23 07:31
【コラム】SPACブームは止まるところを知らず、消費者向けテクノロジーに変化をもたらしている
その他
2021-07-07 10:32
スポーツ報道の現状に挑戦する女性によるスポーツメディアスタートアップ「The GIST」が1.1億円調達
その他
2021-05-23 22:53
ウィズセキュア、Salesforce環境のセキュリティ状態を簡易診断する無料ツール
IT関連
2023-11-28 00:09
AWSジャパンが今日からテレビCMを全国で放映開始。実在のサービスを少年や少女が活用
AWS
2022-08-15 00:42
Linuxを標的とする新たなステルス型マルウェア「Shikitega」が発見
IT関連
2022-09-09 07:16
低スキル求職者が自分で面接を予約、採用の時間・費用を削減する求人マーケットプレイスFrontier
HRテック
2021-07-13 21:04
在宅組にも公平な職場が必要–ハイブリッドワークの10の危険信号
IT関連
2021-08-07 22:08
反トラスト法に阻まれてVisaがPlaid買収中止、フィンテック関係者に落胆の声が広がる
フィンテック
2021-01-15 17:37
Netflix、ゲーム分野への進出を明らかに Netflix会員なら追加料金なしでプレイ
IT関連
2021-07-22 10:25
JX通信社が約20億円のシリーズC調達、SNS発のリスク情報を配信する「FASTALERT」軸に開発・営業体制強化
ネットサービス
2021-08-19 11:37
KDDI、国際電話の着信拒否機能を提供 「ワン切り詐欺」防止へ
セキュリティ
2021-02-09 12:50
LibreOffice WebAssemblyのデモが公開、今年秋にはリッチテキストエディターのウィジェットが登場予定
Office
2022-02-17 07:25
緊急通報対応を効率アップさせるクラウドベース開発のRapidDeployが約32億円調達
パブリック / ダイバーシティ
2021-05-03 18:18