Я не понимаю, что вы пытаетесь сделать, но текущая процедура успешно копирует данные из одного набора диапазонов в другой.
Вы пропустили Set из операторов для обновления x и i? Кажется, что следующее работает, как вы ожидаете
Set x = x.Offset(10,0)
Set i = i.Offset(5,0)
Если пропущение Set
не является вашей проблемой, пожалуйста, расширьте свой вопрос, включив в него полный код и характер сбоя, с которым вы столкнулись.