The ship carries currency and will change it for you - and usually change back larger denominations, of if not, a representative of the government of a particular country will board first thing to change money for those going ashore.
Although most of the ports of call are in countries with different currency most will accept the Euro and some will also accept the US dollar. Euros are very easy to obtain from ATMs ashore but take a reasonable amount for immediate needs and the odd drink or coffee and if you plan to use local taxis for day trips then take a larger sum. The ship will give you the local currency in exchange for US Travelers Cheques or UK pounds but it is cheaper to convert directly at an ATM with a Debit Card from Nationwide. There are loads of times you can do your own excursions in the Baltic with the exception of St. Petersburg but do your homework before you go so that you at least have a good idea as to what you would like to see or do....Hope that helps....Heathe.