Skip to main content

Notifications

Community site session details

Community site session details

Session Id :
Power Automate - Building Flows
Unanswered

Cannot make the flow go through all identified rows in a spreadsheet

(0) ShareShare
ReportReport
Posted on by 32

With the help from @v-wenjuan-msft, I've built a flow which identifies the number of a new file added or modified towards an existing Excel sheet. It creates a new file based on information from the original document and from a row in the spreadsheet. However, I'm unable to make it go through all the rows where I have this identified number - it only does the first one. So there's something wrong with the logic somewhere.

 

Note; I know it's messy, but I'm more interested in the function than the beauty at this stage.

 

Here's the process as it is today:

BkkBound_0-1687857907792.png

 

Codes:

Split: Split(triggerOutputs()?['body/{Name}'],'_')[0]

Outputs('compose')

 

BkkBound_1-1687857907797.png

 

Body('Filter_Array*

BkkBound_2-1687857908464.png

 

variables('ListRows')

variables('ListRows')

identifier - triggerOutputs()?['body/{Identifier}']

last - last(split(triggerOutputs()?['body/{FilenameWithExtension}'],'.'))

 

 

 

BkkBound_3-1687857908344.png

 

 

  • CU26090802-0 Profile Picture
    32 on at
    Re: Cannot make the flow go through all identified rows in a spreadsheet

    Hi @v-wenjuan-msft , and thank you for your continued support!

    Here's the whole thing, with the expressions:

     

    BkkBound_5-1688527769160.png

     

    Compose expression:

    Split(triggerOutputs()?['body/{Name}'],'_')[0]
     
    BkkBound_4-1688527700454.png

     

    Value: outputs('ListRows')?['body/value']

    itemnumber: item()?['Itemnumber']

    Outputs: outputs('Compose')

     

    BkkBound_3-1688527524947.png

    length: length(body('Filter_array_3')

     

    BkkBound_6-1688527907141.png

    body('Filter_array_3')

    BkkBound_7-1688527980452.png

    triggerOutputs()?['body/{Identifier}']

    BkkBound_8-1688528066477.png

    last(split(triggerOutputs()?['body/{FilenameWithExtension}'],'.'))

     

    BkkBound_9-1688528076899.png

    concat(body('Filter_array_3')[0]['Customer'],'_',body('Filter_array_3')[0]['Item Name'],'.',outputs('Compose_2'))

     

    BkkBound_10-1688528204376.png

    outputs('Compose_3')

    triggerOutputs()?['body']

     

    The following is the final step which also adds metadata to the newly created file. I have tried the operation with and without this step, but it doesn't matter whether it's there or not:

    BkkBound_11-1688528301449.png

    outputs('ListRows')?['body/value']

  • v-wenjuan-msft Profile Picture
    Microsoft Employee on at
    Re: Cannot make the flow go through all identified rows in a spreadsheet

    Would you please spread every action and take screenshots? so that I can check parameters/functions you insert in them and try to figure out what's going on.

     

  • CU26090802-0 Profile Picture
    32 on at
    Re: Cannot make the flow go through all identified rows in a spreadsheet

    Hi @v-wenjuan-msft ,

    I think i might have a very elementary fault here which I cannot figure out.

    It seems to cycle the same row over again. So it takes C column in the example above and just runs that 47 times

  • v-wenjuan-msft Profile Picture
    Microsoft Employee on at
    Re: Cannot make the flow go through all identified rows in a spreadsheet

    Hi,

     

    There're 47 loop here which means there should be 47 rows found from Excel and there will be 47 copies created. Would you please click "Next" to check their processes?

    vwenjuanmsft_0-1688001483668.png

     

    One more tips, you can set concurrent control for the "Apply to each 2" to 50 so that it will handle with 50 loop at the same time.

    vwenjuanmsft_1-1688001752372.png

     

    Community Support Team _ Wenjuan Zou

    If this post helps, then please consider Accept it as the solution to help the other members find it.

     

  • CU26090802-0 Profile Picture
    32 on at
    Re: Cannot make the flow go through all identified rows in a spreadsheet

    Hi @v-wenjuan-msft ,

    it doesn't change anything unfortunately. It still only creates a file based on the first row it finds.

    It doesn't give any error message either, it just completes "successfully". All the outputs and inputs also gives the right data (All rows) but it doesn't process all of them.

    BkkBound_0-1687949038785.png

     

     

  • v-wenjuan-msft Profile Picture
    Microsoft Employee on at
    Re: Cannot make the flow go through all identified rows in a spreadsheet

    Hi @BkkBound ,

     

    Thanks for your table. That's clear!

    vwenjuanmsft_0-1687944252151.pngvwenjuanmsft_1-1687944419149.png

     

    Here's the function I used:

    concat(item()?['A'],'-',item()?['B'],'.',outputs('Compose_3'))

     

    Community Support Team _ Wenjuan Zou

    If this post helps, then please consider Accept it as the solution to help the other members find it.

  • CU26090802-0 Profile Picture
    32 on at
    Re: Cannot make the flow go through all identified rows in a spreadsheet

    Hi @v-wenjuan-msft ,

    you're correct.

     

    1. A PDF is uploaded to a Sharepoint folder, this PDF have got a filename consisting of <A><B>.pdf

    Field A is extracted from the filename and compared to a Excel sheet, this field could occur multiple times in the Excel sheet and I want to create one PDF file per row.

     

    So I have this file coming in:

    123456_SomeName.pdf

     

    The Excel sheet have this data:

     ABCD
    1ItemNameIdentifierValueA
    2123456SomeName651321Italy
    3121748SomeName651984France
    4123456SomeOtherName651489Germany
    5123456SomeName651123Poland

     

    So I want to take the original PDF coming in and create copies with filename based on the values in the excel, so for this example I want to take the info from row 2,4 and 5 and create a file per individual row.

    Now this is working, but it only takes the first row.

     

    I have also tried adding the filter array, but no luck still.

  • v-wenjuan-msft Profile Picture
    Microsoft Employee on at
    Re: Cannot make the flow go through all identified rows in a spreadsheet

    Hi @BkkBound ,

     

    Sorry that I'm a little bit confused about your new request.

    Do you mean you have retrieved a "identified number" from the SharePoint filename, and you have several rows in Excel sheet with this number as "Itemnumber" and you want to use an action to get them all, but it only return the first row it get? Please kindly correct me if I made any mistake.

     

    If that's the case, the issue is due to this action:

    vwenjuanmsft_0-1687932540327.png

    To use this action to search for a row, you have to ensure the key value is unique in the key column. Otherwise, if there are several rows match your search condition, it will return the first one.

     

    You should use "Filter array" to retrieve the rows you want from "Listrows" action:

    vwenjuanmsft_1-1687933088152.png

     

    Community Support Team _ Wenjuan Zou

    If this post helps, then please consider Accept it as the solution to help the other members find it.

     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Michael Gernaey – Community Spotlight

We are honored to recognize Michael Gernaey as our June 2025 Community…

Congratulations to the May Top 10 Community Leaders!

These are the community rock stars!

Announcing the Engage with the Community forum!

This forum is your space to connect, share, and grow!

Leaderboard > Power Automate

#1
Michael E. Gernaey Profile Picture

Michael E. Gernaey 566 Super User 2025 Season 1

#2
David_MA Profile Picture

David_MA 516 Super User 2025 Season 1

#3
stampcoin Profile Picture

stampcoin 492