это мой случай
для кнопок вверх и вниз (вверх надо ++ на -- заменить)
scbutton это имя скрола

Код:
on (press) {
interval = setInterval(function () {
txtname.scroll++;
pol = ((_global.scbot-_global.sctop)/(txtname.maxscroll))*(txtname.scroll)+_global.sctop;
scbutton._y = pol;
}, 30);
}
on (release) {
clearInterval(interval);
}
на скролбаре (мувик)

Код:
on (press) {
startDrag(scbutton, false, 634, 21, 634, 371);
_global.onbutton = true;
}
on (release) {
stopDrag();
_global.onbutton = false;
}
в каком нибудь мувике

Код:
onClipEvent (enterFrame) {
this.onMouseMove = function() {
if (_global.onbutton) {
pol = int((this._parent.scbutton._y-_global.sctop)/((_global.scbot-_global.sctop)/(this._parent.txtname.maxscroll+1)));
trace(pol);
this._parent.txtname.scroll = pol;
}
};
}
на первом кадре

Код:
_global.sctop = 21;
_global.scbot = 371;
_global.onbutton = false;
может замутил
но все работает и зато свое в ручную
хотите могу выложить исходник, в принципе это флашка которая загружает внешний htm и если содержание не помещается то появляется скрол с кнопками, если помещается то они становятся невидимыми