This worked for me in OFP on ladders I placed via the editor:
_man action ["ladderup",b2_ladder2]
"b2_ladder2" is the name of the ladder object I added. Note that when units get to the top, they would sometimes slide backwards and get stuck, so I would give them a little push forward to insure they ended up forward enough onto surface area they were climbing to, via setpos commands like this:
dostop _man
_man setdir _dir
_pos = getpos _man
_x = _pos select 0
_y = _pos select 1
_z = 11.8
?alive _man: _man setdir _dir
~.01
?alive _man: _man setpos [_x + .10,_y - .02, _z]
~.01
?alive _man: _man setpos [_x + .20,_y- .04, _z]
~.01
?alive _man: _man setpos [_x + .30,_y- .06, _z]
~.01
I used setdir to insure he was facing the direction to move, then incremented a series of setpos commands to slide the guy forward (you can now use modelToWorld command instead of incrementing x,y positions--its cleaner and easier to read). The z value (height) I set to be just a tad higher than the surface area they need to get onto. It was brute force code, but it worked, and didn't look too bad. I don't know if ARMA will give you the same trouble when your unit gets to the top of the ladder or not.
I also wonder that if you use setvectorup to change the angle of the ladder to something other than 90 degrees, if the ladder climb animation will do it right. I think your ladder will be slanted, but the retard AI will climb straight up.