I am trying to concatenate two columns, a percentage (based on a formula) in one column and its associated product in the other column. When I concatenate, the percent is converted to a decimal. I know to multiply this result by 100 and add ‘%’ to get the result I want. And it works for most values, but some of the decimals turn out like this: 15.920000000000002%. How do I get all resulting decimals to show as XX.XX%?
Solved
Concatenate percentages so they show as percentages with 2 decimal points
Best answer by Dana_Selzer
Forcing two digits after the decimal can be done with the help of a regular expression. Because the rounded value might not actually need a decimal point in all cases—e.g. 15.0 translates into just “15” as a string—it gets a little long:
REGEX_EXTRACT(ROUND({Formula %}*100, 2) & IF(NOT(FIND(".", ROUND({Formula %}*100, 2) & "")), ".") & "00", ".*\\.\\d{2}")
Here’s how to insert that into your formula:
CONCATENATE({Infusion vs Prod},"-(", REGEX_EXTRACT(ROUND({Formula %}*100, 2) & IF(NOT(FIND(".", ROUND({Formula %}*100, 2) & "")), ".") & "00", ".*\\.\\d{2}"), "%)", {Latin Name / Specifics}, " (", {Ingredients / Product Type}, ")")
Thank you so very much, Justin! This has haunted me for a long time now and will make my life and the work of my teams much easier! It worked perfectly!
Login to the community
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.
