キャンバス アプリにグローバル サポートを組み込む
Power Apps はグローバル製品です。 さまざまな言語や地域でキャンバス アプリを構築し、使用できます。
アプリのビルド中および実行中の両方で、Power Apps によって表示されるテキストはさまざまな言語に翻訳されています。 メニュー項目、ダイアログ ボックス、リボンのタブなどのテキストがお使いの言語で表示されます。 日付や数字の入力と表示にも、お使いの言語と地域が適用されています。 たとえば、世界の一部の地域では . (ドットまたはピリオド) が、その他の地域では , (コンマ) が小数点として使用されます。
作成したアプリをグローバル対応にすることもできます。 Language、Text、Value、DateValue やその他の関数を使用して、異なる言語で表示され、入力として使用されるものを調整できます。
言語の設定
ネイティブのスタジオまたはネイティブのプレーヤーを使用している場合は、使用する言語がホスト オペレーティング システムによって提供されます。 Windows の場合、この設定は "すべての設定"、次に "時間と言語" の設定で制御できます。 さらに Windows では、言語設定を上書きして、小数点区切り文字として使用する文字を指定できます。
Web エクスペリエンスを使用する場合、使用する言語はブラウザーによって提供されます。 多くのブラウザーでは、既定でホスト オペレーティング システムの設定が使用されますが、一部のブラウザーでは手動で言語を設定することもできます。
作成環境
作成環境は、作成者の言語設定に適応します。 さまざまな言語を使用する作成者たちが同じアプリを編集できるように、アプリ自体は言語に依存しない方法で格納されます。
数式での名前
数式のほとんどの要素は常に英語です。
- 関数名: If、Navigate、Collect など
- コントロールのプロパティ名: Screen.Fill、Button.OnSelect、Textbox.Font など
- 列挙名: Color.Aqua、DataSourceInfo.MaxValue、FontWeight.Bold など
- 信号記録: Compass.Heading、Location. Latitude、App.ActiveScreen など。
- 演算子: Parent、in、exactIn など。
作成環境がローカライズされると、コントロールやその他のオブジェクト名が作成者のネイティブ言語で表示されます。 スペイン語の場合、一部のコントロールは次のように表示されます。
これらのコントロールの 1 つをアプリに挿入すると、その名前は既定で英語になります。 この変更は、コントロールのプロパティ名と、数式の残りの部分との一貫性を保つために行われます。 たとえば、上記で一覧表示されている Casilla は Checkbox1 として挿入されます。
コントロールの挿入後に、好きな名前に変更できます。 選択した状態では、"コンテンツ" リボンの左側にコントロールの名前が表示されます。 この名前を選択すると、名前を編集できるテキスト ボックスが現れます。
必要に応じて、コントロールの名前を Casilla1 に変更できます。 (ここではブラウザーによって) 赤い波線が表示されるのは、この名前がスペイン語ではないためであり、問題はありません。
以下のものについて、好きな名前を付けることができます。
- コントロール名
- コレクション名
- コンテキストの変数名
数式の区切り記号とチェーン演算子
いくつかの区切り記号と演算子 は、作成者の言語の小数点に基づいて変更されます。
作成者の言語の小数点 | Power Apps 小数点 | Power Apps リスト区切り記号 | Power Apps チェーン演算子 |
---|---|---|---|
. (ドットまたはピリオド) | . (ドットまたはピリオド) | , (コンマ) | ; (セミコロン) |
, (コンマ) | , (コンマ) | ; (セミコロン) | ;; (二重セミコロン) |
Power Apps のリスト区切り記号の変更は、Excel のリスト区切り記号の変更と一致します。 これにより、次のものが影響を受けます。
たとえば、次の数式を、小数点にドットまたはピリオドを使用する言語および地域 (日本や英国など) で表したとします。
次に、フランスやスペインなど、小数点記号にコンマが使用されている言語と地域で、同じ式を表示します。
強調表示は、2 つのバージョン間で変更される演算子を示しています。 プロパティ選択演算子 . (ドットまたはピリオド) は、Slider1.Value では、小数点が何であろうと常に同じである点に注意してください。
内部的には数式は変わらず、変更されるのは表示方法と作成者による編集方法のみです。 2 つの異なる言語を使用する 2 人の作成者が、それぞれの言語に応じた区切り文字と演算子を見ながら同じ数式を編集することができます。
グローバルなアプリの作成
作成したアプリは、さまざまな言語に適応し、世界中のユーザーに優れたユーザー エクスペリエンスを提供することができます。
Language 関数
Language 関数は、現在のユーザーの言語タグを返します。 たとえば、この関数は英国のユーザーには "en-GB" を、ドイツのユーザーには "de-DE" を返します。
特に、Language を使用すると、ユーザー向けに翻訳されたテキストを表示できます。 アプリには、アプリの翻訳済みの値のテーブルを含めることができます。
その後、次のような数式を使用して、テーブルから翻訳された文字列をプルします。
LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText
その他の言語に翻訳された文字列は、お使いの言語での文字列よりも長くなる可能性があります。 多くの場合、ユーザー インターフェイスで文字列を表示するラベルとその他の要素を、対応するために幅を広げる必要があります。
詳細については、Language 関数のドキュメントを参照してください。
数値、日付、および時刻の書式設定
世界各地で、数値、日付、および時刻はさまざまな形式で表記されています。 コンマの意味、小数点以下桁数、および月、日、年の順序は場所によって異なります。
Text 関数は、ユーザーの言語設定を使用して数値および日付を書式設定します。
Text には、数値や日付をどのように書式設定するかを把握するために、書式設定文字列が必要です。 この書式設定文字列は、以下の 2 つの書式のいずれかである可能性があります。
- グローバル対応列挙体。 たとえば、Text( Now(), DateTimeFormat.LongDate ) のようになります。 この数式は、言語に適切な形式で現在の日付の書式を設定します。 この方法は、書式設定文字列を指定する場合にお勧めします。
- カスタム書式設定文字列。 たとえば、Text( Now(), "[$-en-US]dddd, mmmm dd, yyyy" ) とすると、言語「en-US」で使用される場合の列挙と同様のテキストが表示されます。 カスタム書式設定文字列の利点は、特定の項目を指定できることです。
カスタム書式設定文字列の前にある「[$-en-US]」は、カスタム書式設定文字列を解釈する言語を Text に指示しています。 この文字列が挿入され、既定でユーザーの作成言語になります。 通常、この文字列を変更する必要はありません。 これは、さまざまな言語を使用する作成者が同じアプリを編集するときに便利です。
Text に対する 3 つ目の引数は、関数の結果にどの言語を使用するかを指定します。 既定では、現在のユーザーの言語設定です。
詳細については、Text 関数のドキュメントを参照してください。
数値、日付、および時刻の読み取り
ユーザーが指定した数値、日付、および時刻を読み取るための 4 つの関数があります。
- Value: テキスト文字列の数字を数値に変換します。
- DateValue: 文字列の日付値を日付/時刻値に変換します。 テキスト文字列で指定された時刻は常に無視されます。
- TimeValue: テキスト文字列の時刻値を日付/時刻値に変換します。 テキスト文字列で指定された日付は無視されます。
- DateTimeValue: テキスト文字列の日付と時刻の値を日付/時刻値に変換します。
Excel を使用したことがある場合、これらの関数はすべて単一の Value 関数にまとめられています。 Power Apps には日付/時刻および数字に個別の型がありるため、ここでは分割されます。
これらすべての関数には、同じ引数があります。
- String, required: ユーザーからの文字列です。 これには、テキスト入力 コントロールに入力され、Text プロパティによってこのコントロールから読み取られる文字列の種類などがあります。
- Language, optional: 文字列 を解釈する言語。 既定では、ユーザーの言語設定です。
たとえば、次のようなものです。
- Value( "12,345.678", "en-US" ) または Value( "12,345.678" ) の場合、「en-US」がユーザーの言語であり、計算に使用できる数字 12345.678 を返します。
- DateValue( "1/2/01", "es-ES" ) または DateValue( "1/2/01" ) の場合、「es-ES」がユーザーの言語であり、日付/時刻の値 2001 年 2 月 1 日深夜を返します。
- "fr-FR" がユーザーの言語である場合、TimeValue( "11:43:02", "fr-FR" ) または TimeValue( "11:43:02" ) は、日付/時刻の値 January 1, 1970 at 11:43:02 を返します。
- "de-DE" がユーザーの言語である場所 DateTimeValue( "11:43:02 1/2/01", "de-DE" ) または DateTimeValue ( "11:43:02 1 / 2/01" ) は、日付/時刻の値 February 1, 2001 at 11:43:02 を返します。
詳細については、Value および DateValue、TimeValue、DateTimeValue 関数に関するドキュメント、および日付と時刻の処理 を参照してください。
カレンダーと時計の情報
Calendar 関数および Clock 関数は、ユーザーの現在の言語でのカレンダーと時計の情報を提供します。
特に、これらの関数を使用すると、選択肢が一覧表示された ドロップダウン コントロールが提供されます。
詳細については、Calendar 関数および Clock 関数のドキュメントを参照してください。
注意
ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)
この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。