you can use a door for elevators, and the lip would be how far up and down for the elevator to go. never tried the thing with a door opening when the elevator gets there, but i think this might work if i am understand you correctly:
make a func_door as the elevator, trigger it with a trigger_multiple brush at the top and bottom. and i'd make it so it starts at the bottom (always), goes to the top and waits for a set amount of time (using delay), and then goes back down. dont forget a wait key so you can get on the elevator before it moves
once thats working, make the door at the top that opens when the elvator goes up. trigger it with the same brushes that trigger the elevator. using a the wait key make it open at the correct time (before the elevator gets to it), and using a delay key make it close at the right time (after the elevator is below it).
some more information on exactly what you want it to do would be helpful, because your post was confusing to me :confused:
heres wedge's tutorial on automatic elevators using func_plat and trigger brushes (found at map-review.com), it might help too:
http://www.map-review.com/index.php?page=tutorial_view&id=4)
i think the func_platform the tutorial walks you through would work the same as the "door" in the situation