My approach, although I have yet to perfect it, is to try and partition off a portion of the tank with plexiglass or netting. Once the fish swims into the section I block it off. It then should be relatively easy to catch the fish in this smaller area absent of rock, corals, etc.
My first attempt at this was a large piece of netting attached to three wooden dowels. I would stick the dowels into the sandbed so as to stretch the netting across the front corner of the tank. Obviously, the netting has to big enough to extend the full height of the tank. It sort of worked since every fish in the tank other than the 6" sailfin tang that I was trying to catch would swim in and out of the partitioned off area.
I plan to try it again with clear netting or a large, clear plastic bag. I am convinced the concept will work, but have yet to prove it.