FishHook
да как он может что-то перебирать, есть он выполняется один раз и вы его принудительно завершаете в любом случае?
Тут не весь код

тут просто одна функция с циклом…
Данная функция вызывается в ДРУГОМ цикле, и она обязана каждый раз стартовать заново и каждый раз завершатся. Вы меня просто не поняли

И цикл работает очень хорошо, если я удалю оператор else
def srch(cell,n):
while rn_out_sheet['F'+str(n)].value !=None:
if rn_out_sheet['F'+str(n)].value == cell:
cell = rn_out_sheet['H'+str(n)].value
n += 1
return cell
В данном случае все хорошо отрабатывается, но если условие
истинно