Работайте снизу вверх и удаляйте повторяющиеся строки после перемещения дат вверх.
Не забудьте сначала отсортировать данные.
dim i as long
with sheet1
for i=.cells(.rows.count, 1) to 2 step -1
if .cells(i, 1)=.cells(i-1, 1) then
.cells(i-1, 5).resize(1, 2) = .cells(i, 3).resize(1, 2)
.cells(i, 3).entirerow.delete
end if
next i
end with