@addy_619 to solve without linq, do the following:
read range for the entire excel sheet → save as dt1
For each row activity (on dt1)
If row.item(“YourColumnName”).ToString.ToUpper.Contains(“TOTAL”)
a. (true side) Assign TotalRow (this is an int32 variable) = dt1.indexof(row) + 1
b. Break activity
c. (false side) leave this blank
Now your integer variable called TotalRow is the row number within excel that contains the word “TOTAL” in the column you’re searching. If TotalRow = 0, then that means the word “TOTAL” was not found.
So, use linq to find the row where it contains the word “Total”. ItemArray translates the entire row into an array of strings basically. Then, check to see if you found a match checking its count. Then, use IndexOf to find the index of the matched row. Add 1 for the row number.