VARIANT型に値セットするならV_*マクロを使おう

OleAuto.hに定義がある

VARIANT variant;
VARIANT *pV = &variant; 

V_VT(pV) = VT_I4;
V_I4(pV) = 100;

って感じ。直接メンバ変数に設定するよりわかり易くなる。
VT_I4のときはどのメンバに設定するかすぐわかんないでしょ?

ネタ元