The short answer is: if your cruise itinerary takes you to Vancouver, you'll need a passport. As of June 1, 2009, everyone travelling between the U.S. and Canada, Mexico, Central and South America, or the Caribbean and Bermuda by land, sea, or air is required to present a valid passport to cross the border.
Travellers from Europe don't need a visa, but must have a valid passport. If you're arriving from another country, you may need a visa.
If you're travelling with children, parents should have proper identification for each child (passport or birth certificate) and additionally, adults acting as chaperones should carry a letter of permission from each child's parents. Divorced parents with shared custody should have the necessary legal documents to establish their status.