cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
redlyst
Regular Visitor

Force Text Input Format Number to Comma or Dot?

 

So, when I type 1000000 in that field, its automatically force to 1.000.000, how to do that? 

 

1 ACCEPTED SOLUTION

Accepted Solutions
RusselThomas
Microsoft
Microsoft

Hi redlyst,

 

You can try the Text() function to format numbers using commas and periods.

I'm not sure how you can format input numbers while typing though - functions generally get applied to an existing value.

 

To illustrate;

 

Create Text Input TextInput1 and set the Format property to TextFormat.Number 

Create Text Label Label1

 

Set the Text property of Label1 to;

Text(Value(TextInput1.Text),"[$-en-US]###,###,###.00")

The Text() function with number formatting looks for a number to apply the formatting to, hence the Value() function wrapper.

 

What you type into the input will be replicated to the label, but with formatting.

Like I said though, formatting as you type, or pre-formatting input controls is not something I know how to do.  You could possibly put the input field over the label and make it transparent to give an effect of formatting as you type...but this could have weird results when tabbing through or selecting everything in the input control, unless it's 100% aligned.

 

Hope this helps,


RT

 

View solution in original post

4 REPLIES 4
RusselThomas
Microsoft
Microsoft

Hi redlyst,

 

You can try the Text() function to format numbers using commas and periods.

I'm not sure how you can format input numbers while typing though - functions generally get applied to an existing value.

 

To illustrate;

 

Create Text Input TextInput1 and set the Format property to TextFormat.Number 

Create Text Label Label1

 

Set the Text property of Label1 to;

Text(Value(TextInput1.Text),"[$-en-US]###,###,###.00")

The Text() function with number formatting looks for a number to apply the formatting to, hence the Value() function wrapper.

 

What you type into the input will be replicated to the label, but with formatting.

Like I said though, formatting as you type, or pre-formatting input controls is not something I know how to do.  You could possibly put the input field over the label and make it transparent to give an effect of formatting as you type...but this could have weird results when tabbing through or selecting everything in the input control, unless it's 100% aligned.

 

Hope this helps,


RT

 

Anonymous
Not applicable

@redlyst @RusselThomas @

 

You can set the default value of the inputbox with a variable, after which you set the variable to the newly input value, and then reset the value of the input text field.

On the default value of the field:

 

Set(Variable,Text(Value(TextInput1.Text),"[$-en-US]###,###,###.00"));Reset(TextInput1)

Anonymous
Not applicable

Apologies, the formuyla should be on the OnChange field, and the default value of the field should be changed to the variable name

RickJ
Advocate I
Advocate I

Nice solution @Anonymous - also if wanting to set the default from a table, I check if the variable is blank, if it is I use the value from the datasource, and make sure I clear the variable on OnHidden. 

Helpful resources

Announcements
Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Difinity Conference 2022

Difinity Conference 2022

Register today for two amazing days of learning, featuring intensive learning sessions across multiple tracks, led by engaging and dynamic experts.

European SharePoint Conference

European SharePoint Conference

The European SharePoint Conference returns live and in-person November 28-December 1 with 4 Microsoft Keynotes, 9 Tutorials, and 120 Sessions.

Power Apps Ideas

Check out the New Ideas Site

We are excited to announce a new way to share your ideas for Power Apps!

Top Solution Authors
Top Kudoed Authors
Users online (3,086)