What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

Power Fx formulas can look different depending on the language settings used to author them. In dot-decimal authoring, commas separate function arguments and a single semicolon chains actions. In French-style comma-decimal authoring, semicolons separate arguments and ;; chains actions. The dot in a control reference such as Slider1.Value stays a dot in either locale.

Why Power Fx punctuation changes by locale

Power Fx adapts formula separators to the author’s locale so that decimal numbers use familiar notation. Microsoft describes the underlying formula as unchanged across author locales: punctuation is displayed and edited according to each maker’s language settings. The official Power Fx global support guidance explains the convention.

Authoring convention Decimal marker Function, list, record-field, and table-record separator Action chaining
Dot-decimal (for example, UK or Japan examples) . , ;
Comma-decimal (for example, France or Spain examples) , ; ;;

In French-style formulas, a single semicolon separates function arguments, fields in a record, or records in a table. Two semicolons together chain actions. A property selector is different: Slider1.Value uses a dot to access the Value property, not to mark a decimal or separate arguments.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use If for a condition and Notify for feedback

If selects an outcome based on a condition. For example, an app might tell the user whether a required field is complete. The argument separators depend on the authoring locale:

  • Dot-decimal: If(IsBlank(TextInput1.Text), Notify("Enter a value"), Notify("Ready"))
  • Comma-decimal: If(IsBlank(TextInput1.Text); Notify("Enter a value"); Notify("Ready"))

Notify displays a message, while If determines which message is called for. Microsoft’s global-support documentation also demonstrates conditional notification and navigation, with punctuation adjusted to the author’s locale.

Chain actions after a successful operation

When an action succeeds and the app should then move to another screen, chain the actions using the locale’s chaining operator. The following illustrates the separator difference; replace the condition and screen name with those in your app:

  • Dot-decimal: If(Form1.Valid, SubmitForm(Form1); Navigate(ConfirmationScreen))
  • Comma-decimal: If(Form1.Valid; SubmitForm(Form1);; Navigate(ConfirmationScreen))

Here, the separators between If arguments are not the same as the operator between the two actions. In the French-style version, one semicolon separates If arguments, while ;; chains SubmitForm and Navigate. Use a success-aware form pattern appropriate to the app’s data flow; navigation should happen only when the save has actually succeeded.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Format numbers and dates for users with Text

Text converts a value to text using a format pattern, and it can take an explicit language tag. This is useful when the app must display a value in a specific language rather than relying on the viewer’s or author’s default. Microsoft’s Text function reference shows French formatting using [$-fr-FR], including a space for grouping, a comma for decimals, and the euro symbol.

For example, a French-locale format can be expressed as Text(1234.5; "[$-fr-FR]#,##0.00 €") in comma-decimal authoring. The semicolon between arguments is the locale’s function separator; the commas and periods inside the quoted format string are part of the format pattern, not formula separators. Follow the relevant custom-format rules when adapting the pattern to your app.

An explicit language tag is also useful for dates when month or weekday names should appear in a chosen language. The format of the output is separate from the punctuation used to write the formula itself.

Parse imported numeric text with its source locale

Text arriving from a file, connector, or external system may use a different decimal and grouping convention from the app maker’s locale. Value and Decimal can interpret text with locale information; consult Microsoft’s Value and Decimal function reference for supported forms and examples.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

At an import boundary, specify the source language or locale when parsing if the incoming text’s convention is known and differs from the default. Validate the choice against the actual data contract: a string such as 1,25 can mean different things under different conventions. Do not assume that every external system uses the Power Apps author’s locale, and do not use display formatting as a substitute for parsing the source value correctly.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Plan localization around the boundary between data and display

For an app serving multiple languages, separate three jobs: choosing interface language, formatting values users see, and parsing values received from other systems. Microsoft’s globalization guidance names Language, Text, Value, and DateValue as relevant functions for adapting what appears to users in different languages.

  • Use Language when the app needs to determine language context.
  • Use Text to format displayed numbers or dates with an intentional pattern or language tag.
  • Use Value, Decimal, or DateValue with appropriate locale handling when converting incoming text.
  • Keep an external data contract explicit about number and date conventions so imports and exports do not depend on an individual maker’s authoring locale.

Quick checks when a formula does not parse

  • Check the app’s authoring locale before changing punctuation.
  • For comma-decimal authoring, use semicolons between arguments and ;; between chained actions.
  • For dot-decimal authoring, use commas between arguments and a single semicolon between chained actions.
  • Keep the dot in property access, such as Slider1.Value.
  • Inspect record and table syntax too: locale-sensitive separators apply there, not only inside function calls.
  • Separate formula syntax from characters inside quoted format strings, which follow the format pattern rather than the authoring separator rules.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.