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

 

View solution in original post

gmaasz
Resolver I
Resolver I

@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)

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

RickJ
Frequent Visitor

Nice solution @gmaasz - 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
PA_User Group Leader_768x460.jpg

Manage your user group events

Check out the News & Announcements to learn more.

Power Query PA Forum 768x460.png

Check it out!

Did you know that you can visit the Power Query Forum in Power BI and now Power Apps

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

R2 (Green) 768 x 460px.png

Microsoft Dynamics 365 & Power Platform User Professionals

DynamicsCon is a FREE, 4 half-day virtual learning experience for 11,000+ Microsoft Business Application users and professionals.

Users online (1,454)