Невозможно ответить / одобрить этот ответ , поэтому размещайте здесь:
Действительно, формат диапазонов источника / назначения при перемещении данных из одного диапазона в другой также может вызывать эту ошибку.
В моем случае диапазон, который я хотел скопировать, содержал столбец с форматированной датой, а столбец содержал одну ячейку с недопустимым значением даты (он даже не был отформатирован из-за значения, которое было отрицательным целым числом). Таким образом, операция копирования между двумя диапазонами остановилась в указанной ячейке, что привело к самому сообщению об ошибке, обсужденному здесь.
Решение в моем случае состояло в том, чтобы использовать Range.Value2 вместо Range.Value , что заставило Excel обойти форматирование ячейки как даты (подробнее здесь ). Однако при этом ваши столбцы даты и времени будут отображаться как целые и десятичные числа. Однако вы сможете изменить форматы на нужные, если знаете, где ожидать значения даты и времени, установив для них свойство Range / Column / Cell.NumberFormat .