Well I give you credit for having an original post idea on these forums!
Your friend's project sounds fascinating to me. I fool around with CNC machines on a hobby level. Here is what I would recommend:
-Put the table on linear bearings used for CNC milling machines. You can get them on eBay, or cheaper on aliexpress if you don't mind the 2 month delivery. I think you will need 25mm to 30mm wide linear bearing guides. The wider they are, the more weight they can support, but the more expensive they become.
-Put the guides on the floor, and the trucks on the table legs.
-The guides must be level and on a rigid surface, so when the table moves, it will retain its level.
-Put the guides in a recess in the floor, so that you won't trip over them, and you won't make the table much higher. (side note, if you are tall, a taller table won't be a problem. I have my table on top of 5" blocks and love the height. I'm 6' 3" tall).
-Use a ball screw to move the table. One on each pair of legs. You are only moving a frictional load, not a weight bearing load, so the screws can be on the small side (and cheap side). A 12mm or 15mm screw will be plenty. The larger the diameter the screw, the more expensive. Get the screws from aliexpress or eBay.
-Use a servo motor, not a stepper motor. The prices are almost the same now in the hobby world. A stepper motor will make a horrible ringing noise, especially at the low RPM needed for this application. A servo motor will be whisper quiet. JMC Servo motor is the cheapest. The model number you want is iHSVxx. where the xx is 57 or 60 depending on the size. But technic clearpath servo motors are easier to setup, and still cheap. If you use a belt reduction, a nema 23 size will be fine to move the table, as my educated guess. With no reduction, you might want a nema 34. I'd probably try a nema 23 to start as they are more compact, even without a belt reduction. Actually I take this back. I'd go with a nema 23, and design in a belt reduction. Servos work best at faster speeds (opposite of steppers), so having a belt reduction will mean the servo can spin in an rpm range that has more torque. This will give you more reliable service.
-With a ball screw, (and the servo's not physically attached), you will be able to back drive the screw. This means if you lean on the table, it will turn the ball nut because the friction in the ball screw and ball nut is so low. In comparison, if you used an acme screw or a v-thread screw, the table will be locked in place when you lean on it, even with no servo motor attached. That is an advantage in your situation, at the expense of significantly more friction in the system, and then a more powerful motor needed to turn it. Having used both v-thread leadscrews and ball screws, the difference is huge, and I think I'd still go with a ball screw in your application. With the system on, the servo will hold the table when you lean on it. But if the system is off, the table will move if you lean on it. There are also servo motors that have a break, so that when the system is off, they don't spin. That would also solve this back driving issue.
-You will need this whole system times two. One for each pair of legs. To couple them, tie the two servos together electronically. The other way to do it is use one servo motor and tie both halves together with a belt or a chain. Both methods are used in CNC machines, particularly cnc gantry routers. For your application, the electronic method will be much better, since you won't need a long mechanical system in-between the two sets of legs.
-Have a home and limit switch on the end of each rail.
-For deciding when to move the table, some sort of vision system like Bob mentioned would be nice, but I think that would be way to difficult to implement, unless your guy is an electrical engineer, and computer programmer, and does vision systems for his day job, and can take home the equipment needed from the dayjob. I think a simple button on the table rail that moved the table from one extreme to the other would be simple to do, and easy to operate. You could have it duplicated on both sides of the table. Push it once, and the table moves 24" from where it is. Push it again, and it moves 24" back. That's it. No other options. Nothing to think about. With the ballscrew and linear rails, I don't think it would be a problem to move it 24" in 10 seconds.
-Expect this project to a year to complete in a hobby situation. Unless your guy is very familiar with cnc, CAD, electronics, computers, arduino, etc. Each component in this type of system has a very steep learning curve.