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

Mathematical operations on Excel numbers (formatted as text)

I'm iterating a DataTable of Excel values.

 

I have two columns, and for each row, I want to summarize those two into a third column, but I concatenate them.

 

This is the expression I use: 

 

% CurrentItem['Column1'] + CurrentItem['Column2'] %

 

How do I get the result as a sum and not a concatenation (in the expression)?

 

Example:

Column1 Column2 Column3

      2               2            

 

I want the result 4  (and not 22)

5 REPLIES 5
Becksie222
Regular Visitor

Bump to the top 😊

tc_procare
Frequent Visitor

I think your numbers are getting stored as text, I ran some quick tests to see if I could duplicate your issue:

tc_procare_0-1648165767015.png

If reading from Excel, I would check to make sure the 'Advanced' option to read as text is disabled, and if so there might be some whitespace in the original excel file to fool PAD into thinking its text.

I would then try "Covert text to number" and refer to your table value with a .trimmed property, just don't have text in your cells like I tested with my variable above 😛

tc_procare_1-1648166044743.png

 

Another idea to pinpoint your root cause: Set a variable to store just one of your values, and then check its type in Flow Variables once it runs (look to see if identifies as Text, or anything other than "Numeric Value", which is what you would want it to be.

 

Hope this helps!

Thanks a lot, @tc_procare 

 

It happens in all flows I create, like the one below. I make an Excel sheet with three columns (A, B, and C) and here two rows. I haven't got the "Read as text" and when inspecting the value, it comes out as a text as you suggest.

 

Untitled.png

 

If I use the convert text to number before the expression, it works, but I would like to know how it can be solved within an expression (to save time over and over in the future).

 

This is my expression, which doesn't work: %CurrentItem['A'] + CurrentItem['B']%

 

I also tried to format the excel data as numbers, and no difference. I would love not to format Excel data, as that will make my PAD flows inefficient.

Becksie222
Regular Visitor

Another workaround is changing the expression to %CurrentItem['A'] * 1 + CurrentItem['B']% and then it will work, but how do I do it right? 😀

tc_procare
Frequent Visitor

My other thought is storing each cell to its own variable for each row of the loop... I think since its being stored to a DataTable, the contents of which are probably all set to the same type when read (I cant find anything to confirm or deny this on MS Docs).

 

I personally give each cell read its own Variable and haven't run across any math operations issues, but I'm not sure if its considered the 'right' way to do it since it adds more steps 😛

Helpful resources

Announcements
Power Platform Conf 2022 768x460.jpg

Join us for Microsoft Power Platform Conference

The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.

New Ideas Forum MPA.jpg

A new place to submit your Ideas for Power Automate

Announcing a new way to share your feedback with the Power Automate Team.

MPA Virtual Workshop Carousel 768x460.png

Register for a Free Workshop

Learn to digitize and optimize business processes and connect all your applications to share data in real time.

MPA Licensing.jpg

Ask your licensing questions at the Power Automate AMA!

Join Priya Kodukula and the licensing team, super users and MVPs to find answers to your questions on Power Automate licensing.

Top Solution Authors
Top Kudoed Authors
Users online (2,383)