Eu estou supondo que o problema é causado por um erro de digitação no seu código nesta linha:
RowPaste = RowPatse
Como o VBA não exige que você declare suas variáveis, ele atribui a RowPaste
o valor de uma nova Variante Vazia RowPatse
. Por isso, o código é quebrado pela segunda vez.
Para evitar esse tipo de problema de digitação, você pode adicionar Option Explicit
ao topo do seu módulo. Isso fará com que o compilador apresente um erro sempre que uma variável não declarada for chamada em seu código.
Esta questão de lado, as linhas
ColCopy = ColCopy
RowPaste = RowPaste
pode ser removido porque não faz absolutamente nada.