Hello,
This is actually a big ask. I started to actually write it up but showing you how to build it and get around whether you have a bunch of requirements not listed is not feasible and is very time consuming.
Here are the straight forward basics of what you need to do.
1. You need to use a Trigger for when a new file is added to a SharePoint document library
2. You need to have a folder that gets only the excel files you want to process, or you have a pattern that you can compare against the name when the Trigger files, so you know if you want or should process.
3. Once the file is determined to be processed you must do the following
a) List the rows in the sheet -- IMPORTANT NOTE the data has to be in a table so you either need to have it configured already, or you need to create one using the Create Table Action in power automate, giving it all the properties it needs to do its works
4) Right after the action that reads the data (again either via a script which has to already be in the file) or via List Rows, if it has a table, you need an Apply to Each. This is a loop that lets you access the output from a previous step.
5. For each row, you have to get the value of the columns you want to compare. In my opinion, you should have a CurrentErrorType, CurrentError, CurrentEmail variables. You would use these to do the following
-CurrentError (get the data from the current row in the loop)
-CurrentEmail(get the current email from the current row in the loop)
-CurrentErrorType. This is a little bit of simple magic. You said you have options of what to do depending on the error. And a switch is perfect for this. But you cab use a Number. So in the loop when you use the Value of the Set Variable action for CurrentErrorType to set it to 1,2,3,4,5 depending on how many different error processings you can do.
6. Add in the switch, setting each block equal to 1,2,3,4,5 whatever. In each block you would do the following
-Create an Email to send out
-Either Attach, Send Link, Whatever, but it would be different in each block.
I am sorry I don't have time to write the whole thing for you, but I am happy to help answer questions.
Here is a screen shot with some notes (you can see them written in an action header). The work isn't all that difficult if what you say is true, then the below (should add error handling too), is what you need.

Cheers
--------------------------------------------------------------------------------
If I had answered your question, please mark your post as Solved
If you like my post please give it a thumbs up
Thanks
Michael
https://gernaeysoftware.com