I have a table similar to the one below:

I need to find the time since the 'START' step for each row. So, for each row I need to find the 'STARTTIME' value that match the 'BATCH' value and the Step as 'START' and then find the difference of that row's start time from the first start step - time stamp for that batch.

Hoping to make it clearer;

How do I write a column formula to do this?

I am aware of using the Row() function to select previous row or nth row etc. but here I need to find a row number based on a condition. Is that even possible?