記事公開日
最終更新日
【Azure AI Translator × Power Automate × Power Apps】Azure AI Translator を使ってみよう!キャンバスアプリでテキスト翻訳してみた


こんにちは!DXソリューション営業本部の森です。
本記事では、Azure AI Translatorを使用して、キャンバスアプリ上でテキスト翻訳していきたいと思います!
実装の流れを簡単に説明すると以下になります。
1.Azure PortalでAzure AI Translatorリソースを構築する。
2.Power Automateでフローを作成する。
3.Power Apps上でアプリを構築し、2で作成したフローを接続し、数式を入力する。
それでは、実際におこなっていきましょう!
1. Azure AI Translatorリソースの作成
まずは、Azure上でAzure AI Translatorリソースを作成していきましょう!Azure Portalにログインします。
ログイン後、左メニューバーで「リソースの作成」を押下します。
![]() |
検索ボックスにて「Translator」と入力し、検索を行います。
検索後に表示される「Translator」を押下します。
![]() |
「Translatorの作成」が表示されるので、「サブスクリプション」、「リソースグループ」、「リージョン」、「名前」、「価格レベル」を入力または選択します。
実際に「サブスクリプション」、「リソースグループ」、「リージョン」、「名前」、「価格レベル」を入力、選択した画像が以下になります。
その他の設定はデフォルトで作成していきますので、そのまま「確認と作成」ボタンを押下します。
![]() |
確認と作成にて作成するリソース内容の確認をして、「作成」ボタンを押下します。
![]() |
「デプロイが完了しました」と出たら「リソースへ移動」を押下します。
![]() |
![]() |
2.フローの作成
次にPower Automateでフローの作成をしていきましょう!
今回はPower Apps上からフローを動かしたいため、インスタントクラウドフローを作成していきます。
「作成」から「インスタントクラウドフロー」を選択します。
![]() |
「インスタントクラウドフローを構築する」で任意のフロー名を入力し、トリガーとして「Power Apps がフローを呼び出したとき (V2)」を選択して、「作成」ボタンを押下します。
![]() |
編集画面が開くので、まずはPower Appsトリガーの設定をしていきましょう。
アプリ上から受け取る翻訳する文章と翻訳言語用の2つの引数を用意します。
今回は、「Translate Text」と「LanguageCodeTag」という2つのテキスト型の引数を作成しました。
![]() |
次に、「Microsoft Translator V3」コネクタの「テキストの翻訳」アクションを追加します。
![]() |
「テキストの翻訳」アクションの設定をしていきます。
ターゲット言語に、PowerAppsトリガーで設定した「LanguageCodeTag」の動的なコンテンツを追加し、
「bodyテキスト-1」には「Translate Text」の動的なコンテンツを追加していきます。
これで、アプリで入力されたテキストが選択した言語に翻訳ができます!
![]() |
実際に作成したフローは、以下画像になります!
フロー作成後は必ず保存するのを忘れないでください。
![]() |
3.キャンバスアプリの作成
ここからはPower Appsでキャンバスアプリを作成していきましょう!
「作成」から「空のアプリ」を選択します。
![]() |
「空のキャンバスアプリ」の「作成」ボタンを押下します。
![]() |
「アプリ名」に任意のアプリ名を入力し、アプリの形式を選択後、「作成」ボタンを押下します。
![]() |
編集画面が開きますので、自身の用途にあうアプリを作成しましょう!
今回は、以下画像のアプリ画面を作成してみました。
![]() |
フローを追加しよう
2.で作成したPower Automateフローを追加していきましょう!
アプリ画面の左側の「・・・」(3点リーダー)から「Power Automate」を押下します。
その後、「+フローの追加」を押下します。
![]() |
「+フローの追加」押下後、検索ボックスにて2で作成したフロー名を入力します。
2で作成した対象のフローが出てくるので、対象のフローを押下します。
![]() |
これで、アプリ上にフローの追加ができました!
![]() |
データソースを追加しよう
次にデータソースを追加していきます。
今回、翻訳言語を選択用として以下画像の言語テーブルをExcelで作成しました!
これを、「Excel Online (Business)」コネクタを使用して追加していきます。
![]() |
実際に、「Excel Online (Business)」コネクタでExcel上のテーブルを追加したのが以下画像になります。
![]() |
数式を入力しよう
ここからは追加したコントロール等のプロパティに数式を入力していきます!
まず。アプリ起動時にデータソースとして追加したExcelの情報を取得してきて、取得してきた翻訳言語情報を選択させたいため、OnStartプロパティにClearCollect関数を使用して以下式を入力します。
ClearCollect(<任意の名前のコレクション名>,<データソースとして追加したExcelのテーブル名>)
実際にアプリに入力したのが、以下数式になります。
ClearCollect(Bloglanguage,LanguageCodeTable1)
![]() |
翻訳言語を選択させるコンボボックスのItemプロパティに、OnStartで作成したコレクション名を記載してあげます。
![]() |
「翻訳する」ボタンのOnSelectプロパティにPower Automateのフローを呼びだして、フローの応答を変数に格納する数式を入力ます。
Set(<変数名>,<2で作成したフロー名>.Run([フローに渡すプロパティ1],[フローに渡すプロパティ2]).[フローから返答を受け取るアクションで追加した引数])
先ほど示した例に沿って今回の場合を当てはめると以下式になります。
Set(TranslatorText,QESblogFlow2025.Run(TextInput1.Text,ComboBox1.Selected.LanguageCodeTag).translatedtext)
![]() |
今回は、If文で翻訳テキストまたは翻訳言語が空白だった場合、アプリ上部にエラーメッセージを出す条件を付け加えたいと思います。
If(
Or(
IsBlank(TextInput1.Text),
IsBlank(ComboBox1.Selected)
),
Notify("翻訳するテキストの入力または翻訳言語が選択されていません",NotificationType.Error),
Set(TranslatorText,QESblogFlow2025.Run(TextInput1.Text,ComboBox1.Selected.LanguageCodeTag).translatedtext)
)
![]() |
翻訳されたテキストを表示させるテキスト入力コントロールのDefautプロパティに「翻訳する」ボタンで作成した変数を入力します。
![]() |
ここまでできたら、アプリを保存し、公開しましょう!
実際にアプリを再生してみて、翻訳したいテキストを入力、翻訳言語を選択後、「翻訳する」ボタンを押下すると...
対象の言語に翻訳できています!
![]() |
まとめ
ここまで、Azure AI Translatorを使用してキャンバスアプリ上でテキスト翻訳していきましたが、いかがだったでしょうか。簡単にAzure AI TranslatorとPower Automate、PowerAppsを組み合わせることできます!
今回は、翻訳先の言語として日本語、英語、フランス語、ドイツ語の4つを選択できるよう試してみましたが、
Azure AI Translatorがサポートしている言語であれば、他の言語にも翻訳することが可能です。
もし他の言語にも翻訳させてみたい場合は、データソースにデータを追加して対応させてください。
これにより、さまざまな言語に翻訳できるアプリを作成することができます!
是非、カスタマイズしながら作成してみてください!
ちなみに弊社では、Power Apps /Power Platformに関するサポートメニューも用意しております。
ご興味のある方は、こちらもご覧ください!

Power Apps/Power Platform サポート&アプリカタログサービス|QESは、日本経済新聞社グループNo.1のITプロ集団として、日本を代表する金融情報サービス会社、QUICKのシステムの開発・運用・保守を担うとともに、金融・証券、事業会社など幅広いお客様に様々なICTソリューションとオフィスソリューションを提供しています。
このブログで参照されているMicrosoft、Power Apps、Power Automate, Azure, その他マイクロソフト製品およびサービスは、米国およびその他の国におけるマイクロソフトの商標または登録商標です。