Surely, @Jeremy has solved his challenge after 8 years. Just to let other readers know, that his method may not have failed if he would have put End(xlUp) instead of End(x1Up).
End(xlUp)
End(x1Up)