@Marino88 I would recommend you create a new flow and take it step by step. When building a flow it's always best to run tests often and troubleshoot early—rather than building the entire flow and trying to troubleshoot later. Also, when testing at each step you can ensure you understand the logic of your flow.
Tip: Rename your actions to keep your flow organized.
I always recommend using the manual trigger so that you don't need to leave Power Automate to trigger the flow. For this case, I will use the Manual Trigger with the Get a Row action. After you've built and tested the flow—you can change the trigger to the For a Selected Row trigger.
Get a Row
Add a Get a Row action. Select a specific row for testing purposes. You'll be running all your tests on this specific row.
Add a Compose action to store the dynamic content you are comparing to in OneDrive. Like I said above, your screenshot is so small I can't make out the text. For my demo, I'll use the Name dynamic content.

Run a test. Verify the Compose action is outputting the correct content. In my case, the output is Jessica.

List Files in Folder
I believe this is the action you are using in your flow—correct me if I'm wrong.

The way you set up your original flow is inefficient. Looping through each item in your OneDrive folder and running a condition check on each item is unnecessary. Instead, you should use the Filter Array action.
To learn more about how to use the Filter Array action refer to this YT Tutorial: Are you using the Microsoft Power Automate Filter Action wrong?
In this video tutorial I’ll show you 3 practical ways to use the Filter Array action and how to use it properly.
1️⃣ Cross-Referencing Data
2️⃣ Filtering by Key
3️⃣ Substring Matching
Did you know that the Condition action has a limit of 10 conditions? Although it might look like the Filter Array action can only accept one condition—this is not true. By using the advanced mode you can enter multiple conditions into a Filter Array action with an expression.
IN THIS VIDEO:
✅ 3 Ways to Use the Filter Array Action
✅ How to use the Scope Action to Group Actions
✅ How to Check the Number of Items returned from a Filter Array Action
✅ How to Cross-Reference Data in Excel with a SharePoint List
✅ How the Filter Array Action Works
✅ How to Access the Dynamic Content from a Filter Array Action
✅ How to Filter Items by a Key
✅ How to Filter Items by Matching a Substring
✅ How to Use Multiple Conditions in a Filter Array Action
----
Filter Files with the Filter Array Action
Add a Filter Array action to your flow. Insert the value dynamic content from the List files in folder action.

In the first value field, insert the Name without extension dynamic content from the List files in folder action.

In the second value field, insert the output from the Compose action storing the Excel dynamic content.

You'll need to adjust the operator to suit your requirements. If you run a test at this point you can view the Input of the filter array action. Notice how the Name
Return Filter Array Count
Whenever I use a Filter Array action, I always like to return the count of items returned in a Compose action. This is helpful when building a flow and can also be used to troubleshoot your flow. Insert a Compose action. Add an Expression. Use the length() function.

Select the Dynamic content tab and insert the body dynamic content from the Filter Array action into the length() function.

This expression will return the number of items returned from the Filter Array action.

Run a test. The Compose action should return 1 if it's found a file with the same name as the Excel dynamic content.

If you are seeing a 0 this means no files were found. You will need to adjust your Filter Array action. By using the is equal to operator the Filter Array action is looking for an EXACT match.
Note my test file below. The Name without extension is "Jessica". However if it was "jessica" or "jessica_smith" the Filter Array action would return nothing as it's not a match. Instead, you would need to use the contains operator. However, that operator is still case sensitive.

Get File Content
The Filter Array action will always return an array of items—even if it's a single item. If you try to use the Id dynamic content from that action in the Get File Content action, it'll automatically be nested inside an Apply to each action.

If you are always expecting a single file (which is what I'm assuming) you can avoid the Apply to Each action. I cover this exact scenario in this section of my 3 Mistakes YOU 🫵 are Making with the Apply to Each Action in your Microsoft Power Automate Flow YT Tutorial.
Hover your mouse over the Id dynamic content. Take note of the text between the single quotes—this is the dynamic content key.

Delete the dynamic content and pull the Get File Content action outside of the Apply to Each action. Delete the Apply to Each action.

Insert an expression. Start with this:

The [0] grabs the first item returned in the Filter Array action.
In between the single quotes, insert the dynamic content key, in this case it's Id. The dynamic content key is case sensitive.
Place your cursor at the start of the expression (press the Up arrow key). Click the Dynamic content tab and insert the body dynamic content from the Filter Array action.

This expression will return the Id from the first item in the Filter Array action.

Run a test. Ensure the file has been found.

Group Actions (optional)
Use a Scope action to group your actions together. I like using Scope actions in my flow to help keep my flow organized. It also helps me to quickly collapse multiple actions with a single click. This reduces the vertical space the action takes up.


Send an Email
Add a Send an email action. Tip: Use your email address in the recipient field while you are building and testing your flow.

Replace the Trigger
I would recommend creating a copy of your flow. I always keep a copy of my flow with a manual trigger. This way I can troubleshoot (should issues arise in the future) or adjust my flow and test it out without having to edit the live flow.

Delete the Manual trigger and the Get a Row action.
Insert the dynamic content from the Flow trigger into the Compose action.

Run a test.
If you'd like to level up your Power Automate skills check out this video: Power Automate Beginner Tips and Tricks | 5 Things You Need to Know – Part 1
I cover the following in this video tutorial:
✅ Power Automate Beginner Tips and Tricks
✅ Why use the Manual Trigger instead of an Automated Trigger
✅ 3 Ways a Compose Action can help you build better flows
✅ How to Manually Trigger a flow with a specific Date and Time
✅ How to return a count of items
✅ How to use the top count
✅ How to send test emails
Hope this helps!
If I helped you solve your problem—please mark my post as a solution ✅. Consider giving me a 👍 if you liked my response!
|