Messi climbed off the bench to score twice.
Vilanova said: "I talked it over with him. He worked hard throughout the pre-season and he's played some tough games. He came into tonight's match after a long trip and a couple of games with his national team. I opted for sending in the freshest players from the start and sending in Messi when the match was more open."