Re,
Tu inities un bloc With... End With, ce qui est une bonne méthode !
Immédiatement derrière : Range("K3") [sans point devant, donc non qualifié, donc si c'est volontaire, c'est que cette cellule est sur une autre feuille...]
NB- Dès que je vois un Range ou Cells non précédé d'un point, je considère qu'il s'agit d'une anomalie ! dans le sens ou la bonne méthode (garantissant la meilleure rapidité) consiste à doter toutes ses expressions de qualificateurs d'objet.
Par ailleurs :
.Range(.Cells(2, 3), .Cells(2, 3).End(xlDown))
définirait plus correctement ta plage...