It ought to be him with whom you share your secrets, not me.
Should "him" be replaced by "he" and "me" be replaced by "I"?
English Language Learners Stack Exchange is a question and answer site for speakers of other languages learning English. It only takes a minute to sign up.
Sign up to join this communityIt ought to be him with whom you share your secrets, not me.
Should "him" be replaced by "he" and "me" be replaced by "I"?
This sentence is already extremely stiff and formal sounding:
It ought to be him with whom you share your secrets, not me.
You can replace me with I without a change in meaning, but it becomes even more formal and even less natural:
It ought to be him with whom you share your secrets, not I.
In natural speech, people are far more likely to use not me. Of course, since your sentence is already hyper-formal, you might actually prefer to use the unnatural not I.
But if you'd like to use natural English, you could say something like this (depending on context):
You should tell him, not me.
Simple and to the point.
Agreed that "him" and "me" serve the same function and should be in the same case; but the case should be nominative, to follow the case of the subject "it," dummy it may be in this construction. Here "whom" carries the freight as object. But is it I whom you should trust?
Should add that rewriting to get rid of the dummy construction, as others have suggested, is the most elegant solution.
This is a fun sentence, and as written is correct.
What it comes down to is that "be" is serving as a dummy copula in a fronted expression and so its object (him) should match the case it would be in were it not fronted. Want more information?
Your sentence is, in the most direct language (though with a slightly different meaning):
You ought to share your secrets with him, not me.
Let's ignore the "not me" for now.
The speaker chose to front (emphasize) the "with" clause, which in English we do by bringing a dummy "be" with a null subject ("it") to the front of the sentence. We fronted "him", and this fronting should not change the grammatical case of the word.
It is him with whom you ought to share your secrets.
Now interestingly, by moving that "ought to" to the dummy verb, we're softening the obligatory nature of the sentence. By saying "It ought", the obligation is placed on the dummy rather than on "you", which makes it read like a statement about how the nature of things should be rather than a direct expression of obligation. It's quite similar to how passive voice would sound.
It ought to be him with whom you share your secrets.
Now that we've done all that, you can see that "me" should be in the same case as "him" because it's offered as replacement for him. And so it is. So:
It ought to be him with whom you share your secrets, not me.
Final note: Many native speakers will strongly desire to make that final "me" into "I". This is because the language of this sentence is quite formal. We are taught in grammar classes that we overuse "me" when we should use "I" (such as saying "You and me" instead of "You and I"), and so when encountering a very formal phrase many people are prone to overcorrecting! This is technically wrong, but the sentence sounds old already, and "not I" would make it seem even more old sounding. At that point the character it adds is more significant than the incorrect grammar in a difficult-to-parse sentence!
The easiest way to think about this is to split the two people into two different sentences, like this:
"It ought to be him with whom you share your secrets."
"It ought not to be I with whom you share your secrets."
Therefore, your correct sentence is:
"It ought to be him with whom you share your secrets, not I."