А зачем вам здесь xlInsertRange? У вас в тех ячейках, которые вы собираетесь заполнить, есть информация? Если нет, это лишняя функция, возможно она и дает тут максимальную задержку.
Для ускорения вывода в Excel лучше пользоваться матрицей (xlWriteMatrixToExcel), а потом на это место растиражировать нужное вам форматирование ячеек (xlPasteFormatFromBuff)
Тогда можно сдвинуть вниз имеющиеся данные с помощью xlReadMatrixFromExcel и с отступом вниз xlWriteMatrixToExcel.
Форматирование задать для одной ячейки или диапазона и растиражировать с помощью xlPasteFormatFromBuffer.
Или: отформатировать заранее вручную в шаблоне Excel-файла.
Или: форматировать ячейки по одной или диапазонами прямо в vip-е по мере их заполнения данными.
В общем, если отвечать на ваш вопрос в первом посте - то другого варианта копирования строк с сохранением формата нет.
Все что я предложил, это изменения порядка вывода в Excel