Present Perfect – Should It Be ‘Did I Answer’ or ‘Have I Answered’?

past-tensepast-vs-present-perfectpresent-perfectquestions

I was talking to a person on chat. Yesterday he asked me a question. Today I replied, then added:

Did I answer your question?

Now that I think about it I should have probably phrased it like so:

Have I answered your question?

Is that so? I tried to find a rule that governs it, but failed. Let's take these ones, for example. The closest is probably "change over time" item. But the examples there are far from being similar to the question at hand.

Are there conditions under which "did I answer" question can be employed?

Best Answer

In short, neither sounds especially out of place. But I believe there is a slight distinction.

"Did" implies the event in question is over. If you can't remember if you replied to someone's question via email you might say "Did I answer your question?"

"Have" implies the event is still ongoing. If you want to know if you fully answered the question, and would elaborate if you haven't answered fully you might say "Have I answered your question?"

You can read more about this distinction here

Personally, I'd say "Does that answer your question?" because the emphasis is more on the explanation than on me. "Have I answered your question" sounds like something tech support people say before they ask you to answer a survey about how helpful they are.