Below is how I would likely create the flow. I'll go into detail on all the actions.

For this example, I'm using the following Excel file that has just Customer and Expiration Date.

Reoccurrence would just be set to 1 day.

I would then use Get future time to get the date one month from today.

Next, I'd use Convert time zone to ensure it's comparing the date to my actual time zone with the format yyyy-MM-dd (to compare against the Excel dates). In this example I've set it to Brisbane.

In the List rows present in a table there are two parts to look at.
- Go into the advanced settings and set DateTime Format to ISO 8601 to get a proper date returned and not just the number representation.
- If your Excel column for Expiration Date didn't have spaces (Expiration_Date for example) then you could setup a Filter Query to only retrieve the records that are equal to the Converted time zone date, but it doesn't handle column names with spaces (your column does). So, in your case, I'd just return everything then use a Filter array to filter out to only the ones you want (see next action).

Filter array takes in the records returned from List rows present in a table and checks to see if each date is equal to the date from Converted time zone. We need to format the Excel date using the following expression so it's also in the format yyyy-MM-dd.
formatDateTime(item()?['Expiration Date'], 'yyyy-MM-dd')

Finally, you can loop over each of the items from your Filter array and send an email. The input for the Apply to each is using the Body of the Filter array. And each of your properties would be in the format:
items('Apply_to_each')?['Excel Column Name']
For example:
items('Apply_to_each')?['Customer']
items('Apply_to_each')?['Expiration Date']
