You can set up a pause, to enter the extension when calling. But since the number of origin will be who you are receiving the call from, and not their extension, other than the main number being ID'd, I doubt it. I presume you want multiple ID's for the same number, depending on the extension called from.
The incoming caller ID is configured on the caller's phone switch so there's nothing you can do about that, except maybe add that "main number" to that person's contact info, so it will at least tell you it's them calling, even if you don't ever dial them on that number.