don't attach code to objects and you can use colorF to color tween the first argument using the colors in the 2nd and 3rd arguments over the 4th arguments duration (in seconds):
import mx.transitions.Tween;
import mx.transitions.easing.*;
import flash.geom.ColorTransform;
var rTween:Tween;
var gTween:Tween;
var bTween:Tween;
var colorObj:Object = {};
var mc_color:MovieClip;
var ct:ColorTransform;
colorF(mc,0xff0000,0xaaffff,1);
function colorF(mc:MovieClip,startColor:Number,endColor:Number,duration:Number):Void{
rTween = new Tween(colorObj,'red',None.easeNone,(startColor&0xff0000)>>16,(endColor&0xff0000)>>16,duration,true);
gTween = new Tween(colorObj,'green',None.easeNone,(startColor&0x00ff00)>>8,(endColor&0x00ff00)>>8,duration,true);
bTween = new Tween(colorObj,'blue',None.easeNone,startColor&0x0000ff,endColor&0x0000ff,duration,true);
mc_color = mc;
ct = mc.transform.colorTransform;
rTween.onMotionChanged = colorChangeF;
}
function colorChangeF():Void{
ct.rgb = Math.round(colorObj.red)<<16 | Math.round(colorObj.green)<<8 | Math.round(colorObj.blue);
mc_color.transform.colorTransform = ct;
}