using Hotdesk profiles is the only way that I could think of, each profile would have an assigned Number as the Calling Party number. This would require the carrier to setup in their database the specific numbers associated with the Company name.
312-555-1111 ABC company
847-555-2222 XYZ Company
Hot desk profile 1005 is logged in and 312-555-1111 is assigned as Calling Party Number, anyone he/she calls will show ABC company as the caller
Hot desk profile 1006 is logged in and 847-555-2222 is assigned as Calling Party Number, anyone he/she calls will show XYZ company as the caller
I hope this helps, I know its not the best option, if there were only a couple of companies you could have the carrier split your B channels into two different Groups on the same PRI, and when anyone needs to dial out as a specific company they would dial trunk access code or you could program a button for it.