OK, after further testing it seems there was still a flaw in my previous solution, for which I apologise. Change your ReadCell method to the following:
public string ReadCell(int row, int column)
{
column += 1;
do
{
row++;
if (ws.Cells[row, column].Value == null)
break;
if (ws.Cells[row, column].Value.ToString() == "Z_KomSilnice_L (24200)/7 ")
{
return ws.Cells[row, column + 1].Value2.ToString();
}
} while (true);
return "";
}