My wife and I recently bought a nice sectional, but I think it was sitting in the furniture warehouse for too long. It had this weird odor that wasn't too bad, but you could tell there was some kind of lingering smell that wasn't to our liking. So I used two things: The first was Nature's Miracle odor and stain remover. It's a bio-enzymatic cleaner that kills bacteria and eliminates odor. I bought this from Petsmart. Just follow the instructions on the back of the bottle. The next day I used Febreze powder for carpets, rugs, and upholstery. I bought this from Target. Also follow the instructions on the back of the can. I had my couch smelling nice and pleasant.
Hope this helps!
This is a page about removing cigarette odors from microfiber furniture. Cigarette odors seem to permeate everything in a home especially upholstered furniture and curtains.