This one took a long time to track down and many attempts at things that didn't pan out to be the problem but finally I tracked it down to domain mapping.
For some reason, if I (or my clients) try to create or edit a post / page using the mapped domain in the URL for the admin panel (i.e. domain.com/wp-admin/) the visual editor does not work, only the html editor. However, if we use the original (unmapped sub-domain) in the admin panel (i.e. site.domain.com/wp-admin) it works just fine.
In the first scenario, when you try to click on the "visual" tab of the editor nothing happens, no response. There are no toolbar icons, only the html editor.
Have you see or heard of this problem before? I can sent screen shots if that will help.