Agree very much with Cirquerider and JimL!
However, to start with, (for modern shaped skis) here are the 4 steps I like:
1) Starting length size: up to 100lb = 140cm; 101-115lb = 145cm; 116-130lb = 150cm; 131-150lb = 155cm; 151-175lb = 160cm; 176-200lb = 165cm; 201 and up = 170cm.
2) Add 0cm if you are a beginner; 5cm intermediate; 10cm advanced/expert.
3) Add 0cm if you ski mostly groomed or hard snow; 5cm off-piste or soft snow.
4) Add 2cm if you ski slalom race, freestyle, or park tricks; 10cm all-mountain, GS race, freeride, or powder.
The result after step #4 is a good starting length. Try a couple of pairs with different lengths close this. Ski them on the terrain(s) and the skiing style(s) you intend to. The one you feel comfy most is the right size!
Keep in mind that certain skis are designed to be even shorter so you need to read manufacturer's specs (or hear gossips here
). Example: Rossignol T-Power Viper X is designed to be a fast compact ski whose ideal length is about 8cm shorter than other shaped skis. And guess what? More and more manufacturers follow this trend.