現在完了形とは — 「過去と現在をつなぐ形」を根本から

時制シリーズも、いよいよ最大の山場に来ました。過去形過去進行形未来表現の3記事で、繰り返し布石を打ってきた一つの問題があります。

日本語の「〜した」は一種類なのに、英語では過去形と現在完了形に世界が二つに割れる。

「鍵をなくした」を I lost my key. と言うのと、I have lost my key. と言うのとで、英語では意味が違います。日本語ではどちらも「なくした」なので、ここが日本語話者にとって時制最大の難所——「した問題」です。

この問題に決着をつけるのが、本記事です。時制の全体マップで位置を確認しましょう。

単純形 進行形 完了形
現在 現在形 現在進行形 現在完了形 ← この記事
過去 過去形 過去進行形 過去完了形
未来 未来形 未来進行形 未来完了形

完了形の縦の列に、初めて足を踏み入れます。

そして、いきなり核心を言っておきます。

現在完了形は、「過去の出来事」を「現在と結びつけて」とらえる形です。

過去形が「今と切れた、終わった世界」を表す形だったことを思い出してください。現在完了形は、その正反対です。過去の出来事を、今この瞬間とつなげて語る。「過去」と「現在」の橋渡しをする、独特の位置に立つ形——それが現在完了形です。

過去 ←——————|—————————→ 未来
              ↑
        現在完了形が立つ場所
       (過去と現在の橋渡し)

   過去形 ←—|(切れている)
              |—→ 現在形(今の帯)

過去形と現在完了形の対比こそが、この記事の主役です。決着セクション(セクション5)を独立させて、過去形との分業を完全に整理します。まずは現在完了形そのものを、根っこから見ていきましょう。

現在完了形とは何か — have + 過去分詞に意味が宿る

「過去」と「現在」をつなぐ独特の形

現在完了形の形は、have / has + 動詞の過去分詞 です。

この形の不思議さは、二つの時間を一つの形に詰め込んでいる点にあります。

パーツ 表すもの 時間軸の位置
have / has 「今、〜を持っている」 現在
過去分詞 完了した動作 過去
have + 過去分詞 完了した動作を、今持っている 過去と現在の橋渡し

I have lost my key. を直訳すると、「私は今、なくした鍵を持っている」——つまり、「過去になくすという動作が起き、その結果を今も抱えている」となります。過去の出来事を、現在の自分の状態として抱え込んでいるイメージです。

ここが過去形との決定的な違いです。

  • I lost my key.(過去形):過去に「なくす」という出来事があった、と過去の世界の中で報告する
  • I have lost my key.(現在完了形):過去になくした結果、今もそれを抱えている(だから今、見つかっていない)

過去形が「今と切れた世界」の中で完結するのに対し、現在完了形は「過去の出来事を、現在の私と地続きにしている」のです。

なぜ have なのか

「過去を現在につなぐ」役目を担うのが、なぜ have なのでしょうか。

have の本来の意味は「〜を持っている」です。これは現在形の動詞で、今この瞬間に何かを所有・保持していることを表します。I have a book. は「今、本を持っている」です。

現在完了形の have + 過去分詞は、この「今持っている」の感覚に過去分詞をつなぐことで、「(過去に完了した)動作を、今持っている=抱えている」を表します。have が「現在」の足場を確保しているからこそ、過去分詞が表す過去の出来事が「今もこっちにつながっている」という感覚になるわけです。

コラム:have の「所有」から「完了」へ 古い英語では、「私は本を書いた」のような完了の感覚を表すのに、こんな言い方をしていました——「I have a book written.(私は、書かれた本を持っている)」。所有の have に、過去分詞で修飾された名詞(書かれた本)が続く形です。「書き終えた状態の本を、今手元に持っている」という構造でした。これが時代を下るにつれて、語順が「I have written a book.(私は本を書いた/書き終えて今持っている)」へと変化し、have + 過去分詞というまとまった形になっていきました。have が「所有」から「完了」の助動詞へと役割を広げた、英語史上の大きな変化です。have の中に今も「今、抱えている」という感覚が生きているのは、この経緯の名残です。

現在完了形は「現在の話」である

ここまでで一つ強調しておきたいことがあります。

現在完了形は、形のうえでも意味のうえでも、「現在」に軸足のある形です。

時制マップで現在完了形が「現在」の行にあるのは偶然ではありません。have / has は現在形の動詞、そして表しているのは「過去の出来事を今抱えている、今の状況」。過去の出来事に触れてはいるけれど、語っているのはあくまで「今」のことなのです。

この「現在に軸足がある」という感覚が、次のセクション以降で扱う3つの用法すべてを貫きます。継続も、経験も、完了も、すべて「今、こうである」を語るための形——それが現在完了形の正体です。

形のおさらい — have / has + 過去分詞

現在完了形の形は、have / has + 動詞の過去分詞 です。新しく覚えるパーツが二つあります——主語による have / has の使い分けと、過去分詞という新しい動詞の変化形です。

主語による have / has の使い分け

have は主語によって形が変わります。三人称単数のときだけ has になります。これは現在形の三単現と同じルールです。

主語
I / you / we / they have + 過去分詞
he / she / it has + 過去分詞
  • I have lost my key.
  • She has lost her key.

過去分詞という新しい変化形

ここからが新しい話です。現在完了形では、動詞を過去分詞という形にして使います。これまでに学んだ動詞の変化形は、原形・現在形(-s)・過去形・-ing 形でした。過去分詞はその仲間に加わる、5つ目の変化形です。

規則動詞の過去分詞は、過去形と同じ形(-ed)です。

原形 過去形 過去分詞
play played played
watch watched watched
study studied studied

規則動詞では、過去形と過去分詞が完全に同じ綴り。ですから規則動詞だけなら、新しく覚えることはありません。

問題は不規則動詞です。不規則動詞では、過去形と過去分詞が違うことが多くなります。

原形 過去形 過去分詞
go went gone
see saw seen
do did done
take took taken
write wrote written
eat ate eaten
break broke broken
speak spoke spoken

go - went - gone のように三つの形がすべて違う動詞、see - saw - seen のように過去形と過去分詞だけ違う動詞、いろいろあります。

ただし、不規則動詞の中にも「過去形と過去分詞が同じ」グループは存在します。

原形 過去形 過去分詞
have had had
make made made
say said said
buy bought bought
think thought thought
put put put

「過去形と過去分詞が同じか違うか」は、不規則動詞ごとに覚えるしかありません。過去形を覚えるときに、ついでに過去分詞も一緒に覚える——「原形・過去形・過去分詞」の3点セットで頭に入れるのが効率的です。辞書や単語帳でこの順序で並んでいるのも、そのためです。

過去形と過去分詞は、形が同じでも役割が違う

ここで重要な注意点があります。規則動詞では played - played のように同じ綴りですが、過去形と過去分詞は文法的な役割が違います

  • 過去形は、それ自体が過去を表す動詞として文の中心に立つ
  • 過去分詞は、それ自体では時制を表さない。have / has と組み合わさって初めて現在完了になる

たとえば次の二文を比べてください。

  • I played tennis yesterday.(昨日テニスをした/played は過去形、文の動詞)
  • I have played tennis.(テニスをしたことがある/played は過去分詞、have と一緒に現在完了を作る)

同じ played でも、役割がまったく違います。文の中心に単独で立っているなら過去形、have / has の後ろにいるなら過去分詞——形が同じだからこそ、役割を意識して読み分けるクセが必要です。

肯定・否定・疑問

否定は have / has の後ろに not を置き、疑問は have / has を主語の前に出します。be動詞と同じ操作です。do / does は使いません。

肯定 have / has + 過去分詞 I have lost my key.
否定 have / has + not + 過去分詞 I haven’t lost my key.
疑問 Have / Has + 主語 + 過去分詞? Have you lost your key?

短縮形は I’ve / you’ve / he’s / she’s / we’ve / they’ve。否定は haven’t / hasn’t です。答え方も have / has で受けます。

  • Have you finished? — Yes, I have. / No, I haven’t.

have は完了形の助動詞として使われるとき、「持っている」という意味の本動詞 have とは役割が違います。本動詞の have(I have a car.)の否定は I don’t have …、疑問は Do you have …? と do を使います。一方、助動詞の have(現在完了の have)は、否定・疑問で do を使いません。同じ have でも、本動詞か助動詞かで操作が変わる、という二面性に注意してください。

形は以上です。本記事の核心はここから先——3つの用法過去形との分業です。

現在完了形は「いつ・なぜ」使うのか — 3つの用法

現在完了形は「過去の出来事を現在と結びつけてとらえる形」「軸足は現在にある形」でした。この基本姿勢は同じでも、「現在とどう結びついているか」の角度によって、用法は3つに枝分かれします。

用法 過去と現在のつながり
継続 過去のある時点から始まったことが、現在も続いている
経験 過去にした経験が、現在の自分の記録として残っている
完了 過去に動作が完了し、その結果が現在にも及んでいる

順に見ていきましょう。

用法1:継続 — 過去から現在まで「ずっと」

過去のある時点から始まった状態や動作が、現在まで続いていることを表します。「(ずっと)〜している」「〜してきた」と訳されることが多い用法です。

  • I have lived in Tokyo for ten years.(10年間東京に住んでいる)
  • She has worked here since 2015.(2015年からここで働いている)
  • We have known each other for a long time.(私たちは長い付き合いだ)

過去形 I lived in Tokyo for ten years. が「(昔)10年間住んでいた——今は住んでいない」になるのに対し、現在完了形 I have lived in Tokyo for ten years. は「10年前から今もずっと住んでいる」を表します。「今も続いている」かどうかで意味がはっきり分かれるのが、この用法の核心です。

継続用法では、期間を示す表現が頻出の目印になります。

目印になる語 意味
for + 期間 〜の間(for ten years, for a long time)
since + 起点 〜以来(since 2015, since I was a child)
how long …? どのくらい長く(How long have you …?)

for と since の使い分けは、**for が「期間の長さ」、since が「始まりの時点」**を指す、と覚えてください。for ten years(10年間という長さ)、since 2015(2015年という起点)——前者は長さ、後者は出発点です。

なお、この継続用法と相性が抜群なのが状態動詞(live, know, have, want など)です。状態動詞はもともと「ある状態が続いている」を表すので、現在完了形の「過去から現在への継続」とぴったり噛み合います。

用法2:経験 — 「これまでに〜したことがある」

過去にある経験をしたことがあって、それが現在の自分の記録として残っていることを表します。日本語の「〜したことがある」にあたる用法です。

  • I have visited Kyoto three times.(京都を3回訪れたことがある)
  • She has read this book.(彼女はこの本を読んだことがある)
  • Have you ever been to Paris?(パリに行ったことはある?)

ここでも軸足は「今」です。「過去にそういう経験があった」事実そのものより、「その経験を今、自分の中に持っている」という現在の状態を述べています。だから経験用法の文は、今の自分が「どういう経験を持つ人間か」を伝える役目を果たします。

経験用法の目印になる語は、回数や頻度を表すものが多く揃います。

目印になる語 意味
ever これまでに(疑問文でよく使う)
never 一度も〜ない
once / twice / three times 1回/2回/3回
before 以前に

ever は疑問文で「これまで一度でも」、never は「一度も〜ない」と否定の意味を含みます。

なお、been to と gone to の違いに注意。Have you been to Paris? は「パリに行った経験があるか(今は戻っている)」、She has gone to Paris. は「彼女はパリに行ってしまった(今ここにいない)」と意味が変わります。経験を聞くときは been を使う、と覚えておきましょう。

用法3:完了 — 「ちょうど〜した/〜してしまった」

過去に動作が完了し、その完了状態が現在にも影響している、もしくは現在の話題と関わっていることを表します。

  • I have just finished my homework.(ちょうど宿題を終えたところだ)
  • She has already left.(彼女はもう出発した)
  • I have lost my key.(鍵をなくしてしまった/今も見つからない)
  • The train has arrived.(電車が到着した/今、駅にいる)

すべての文に共通するのは、過去の動作の結果が今に及んでいることです。宿題を終えた→今は自由、彼女が出発した→今ここにいない、鍵をなくした→今困っている、電車が着いた→今駅にいる。完了用法は「動作の完了そのもの」と「現在への影響」をひとまとめにして伝えます。

目印になる語は、完了のタイミングを示すものです。

目印になる語 意味
just ちょうど(〜したばかり)
already もう(〜してしまった)
yet まだ/もう(否定文・疑問文で)
recently / lately 最近

yet は否定文・疑問文で使います。I haven’t finished yet.(まだ終わっていない)、Have you finished yet?(もう終わった?)。already と yet は対になることが多いので、セットで覚えると効率的です。

「結果」用法はどこへ行ったのか — 4用法との関係

日本の英語教育では、現在完了形の用法を「継続・経験・完了・結果」の4つに分けるのが一般的です。本記事ではこれを3つに整理しています。理由は、「結果」と「完了」の区別がそもそも曖昧で、つまずきの元になりやすいからです。

伝統的な分類でいう「結果」の例は、I have lost my key.(鍵をなくして、今も見つからない)のようなもの。しかしこれは「完了した動作の結果が現在に及ぶ」という、本記事の完了用法そのものです。

本記事では、完了用法を「動作の完了 + 現在への影響」の両方を含むものとして説明しているので、「結果」は完了の中に自然に吸収されています。むしろこのほうが、現在完了形の核心である「過去と現在のつながり」が一貫して見えやすくなります。

4用法で学んだ人は、本記事の「完了」が「完了 + 結果」をまとめたものだと理解してください。本質は同じです。

「した問題」の決着 — 過去形と現在完了の分業を完全整理

過去形過去進行形未来表現の記事で繰り返し触れてきた「した問題」に、ついに決着をつけます。日本語の「〜した」が一種類なのに、英語が過去形と現在完了形に分かれる——この分業を、ここで完全に整理します。

なぜ日本語話者はつまずくのか

日本語の「〜した」は、英語ではこの二つの形のどちらにもなりえます。

  • 「鍵をなくした」→ I lost my key. / I have lost my key.
  • 「彼に会った」→ I met him. / I have met him.
  • 「映画を見た」→ I watched a movie. / I have watched a movie.

それぞれ意味が違うのに、日本語ではどちらも「した」で表せてしまう。日本語に「過去のことを今と切り離すか、つなげるか」を表す文法的な仕組みがないため、英語にするときに「どちらを使うか」という判断が自然に身についていないのです。

判断の核心 — 「今とつながっているか」

判断の決め手はただ一つ、今とのつながりを言いたいかどうかです。

  • 今と切れた、過去の出来事として報告するなら → 過去形
  • 過去の出来事を、現在の自分の状況や記録として語るなら → 現在完了形
「〜した」を英語にしたい
        ↓
今と切れた、過去の出来事として語るか?
        ↓Yes              ↓No(今とつながっている)
   → 過去形            → 現在完了形
   I lost my key.      I have lost my key.
   (昔なくした)      (なくして、今も困っている)

シンプルな問いです。「これは過去の話題なのか、今の話題なのか」——今の話題にしたいなら現在完了、過去の話題として語るなら過去形。

対比でつかむ — 同じ動詞・違う形

並べて比較すると、二つの形が伝えていることの違いがはっきり見えます。

意味 今の状況
I lost my key. 過去形 過去になくした 今は不明(見つかっているかも)
I have lost my key. 現在完了 なくして、今も困っている 見つかっていない
I met him last year. 過去形 昨年会った 今の関係は不明
I have met him. 現在完了 会ったことがある 今もその経験を持つ
She lived in Paris. 過去形 (昔)パリに住んでいた 今は住んでいない
She has lived in Paris for 10 years. 現在完了 10年住んでいる 今も住んでいる

同じ「住んでいた/住んでいる」でも、過去形にすると「今は住んでいない」、現在完了にすると「今も住んでいる」となります。形を選ぶことが、現在の状況についての情報を伝えることでもある——これが英語のしくみです。

強力な判断材料 — 「過去の目印」があれば過去形

判断に迷ったとき、決定的な手がかりがあります。yesterday, last week, ago, in 2010, when I was young のような過去の一点を指す語があれば、迷わず過去形です。これらは現在完了形と一緒に使えません。

  • 誤:I have lost my key yesterday.
  • 正:I lost my key yesterday.

理由は、現在完了形は「今とつながっている」形なのに対し、yesterday は「今と切れた過去の一点」を指すからです。両者は性質が正反対で、同居できません。

過去の目印があるかどうかで、形が自動的に決まる——この判定法は、過去形の記事のつまずきポイント2でも触れていますが、ここで改めて強調しておきます。

過去の目印(過去形と相性) 現在完了の目印(現在完了と相性)
yesterday just / already / yet
last week, last year recently, lately
ago(two days ago など) for + 期間, since + 起点
in 2010 ever, never, before
when I was young so far, up to now

目印を覚えておけば、どちらの形を使うべきかが目で見て分かるようになります。

「現在を含むか含まないか」で目印を見分ける

目印を覚えるのは大事ですが、なぜそれが過去形側/現在完了側に振り分けられるかを理解しておくと、丸暗記が減ります。

過去形側の目印は、すべて今を含まない過去の時点を指します(yesterday は昨日であって今ではない、in 2010 は2010年であって今ではない)。

現在完了側の目印は、すべて今を含む期間や状態を指します。for ten years は「過去10年間ずっと今まで」、since 2015 は「2015年から今まで」、just は「ちょうど今しがた」、recently も「最近〜今まで」。

つまり、その目印が「今」を含むかどうかで、形が決まる——これが目印が振り分けられている理屈です。「した問題」の最深部は、結局のところ「現在を含めて語っているか、含めずに語っているか」という、それだけの違いに帰着します。

文化的な感覚の違い — 「報告」か「状況」か

最後に、語り方の文化の違いも触れておきます。

英語話者は「今のこの状況を述べたい」とき、現在完了形を選びます。鍵をなくして今も見つからない状況なら、I have lost my key. と現在完了で言うのが自然です。これは「今、私はこういう状況にある」という現在の報告です。

一方、過去形を使うのは「過去にこういう出来事があった」という、過去の世界の報告のとき。たとえ今も困っていても、「過去になくしたという出来事があった」と過去側の話題として語るなら、I lost my key. になります。

日本語ではこの感覚が文法に組み込まれていないので、つねに英語側の都合(今のことか、過去のことか)で形を選び直す必要があります。最初は不自然に感じるかもしれませんが、「これは今の状況の話か?過去の出来事の話か?」と問う習慣がつけば、自然に選べるようになります。

つまずきポイント

落とし穴1:過去の目印と現在完了を一緒に使う

最頻出のミスです。セクション5でも触れましたが、つまずきポイントとして改めて押さえます。yesterday, last week, ago, in 2010 のような「過去の一点を指す語」は、現在完了形と共存できません。

  • 誤:I have seen him yesterday.

  • 正:I saw him yesterday.

  • 誤:She has visited Kyoto last year.

  • 正:She visited Kyoto last year.

「過去の目印があれば過去形」——例外なしのルールです。文中に yesterday や ago を見たら、現在完了は使えないと反射的に判断してください。

ただし、whenbefore は注意が必要です。

  • I have known him since we were children.(子供のころから今まで彼を知っている)

since we were children は「子供時代のあるとき」を指す節ですが、ここでは「(その時点から)今まで」という現在までの起点として機能しています。「今まで」を含むので現在完了と相性が良いわけです。過去の一点を指しているように見えても、「今への流れ」を含めて使われていれば現在完了と組めます。

落とし穴2:been to と gone to を取り違える

経験用法(用法2)で説明したとおり、been to と gone to は意味が違います。

  • I have been to Paris.(パリに行ったことがある/今は戻っている)
  • She has gone to Paris.(彼女はパリに行ってしまった/今いない)

経験を尋ねたいのに gone を使うと、「行ってしまって今いない」という意味になってしまいます。

  • 誤:Have you gone to Paris?(パリに行ってしまったの?という奇妙な問いになる)
  • 正:Have you been to Paris?(パリに行ったことある?)

経験は been、不在は gone——この対応をペアで覚えておきましょう。

落とし穴3:本動詞 have と助動詞 have を混同する

have には二つの顔があります。

  • 本動詞 have:「持っている」という意味の動詞。否定・疑問で do を使う
  • 助動詞 have:現在完了形を作る助っ人。否定・疑問で do は使わない
役割 例文 否定 疑問
本動詞 have(持っている) I have a car. I don’t have a car. Do you have a car?
助動詞 have(現在完了) I have lost my key. I haven’t lost my key. Have you lost your key?

同じ have なのに操作が違うのは紛らわしいですが、見分け方はシンプル——後ろに過去分詞があれば助動詞、名詞があれば本動詞です。

  • 誤:Do you have finished?(finished は過去分詞なので助動詞 have、do は不要)

  • 正:Have you finished?

  • 誤:Have you a car?(a car は名詞なので本動詞 have、do を使う)

  • 正:Do you have a car?

落とし穴4:状態動詞を継続用法でうまく使えない

継続用法(用法1)は、もともと長く続いている状態を表すのに使われます。ここで活躍するのが状態動詞(know, like, want, have(所有), live など)です。

状態動詞は現在進行形で見たとおり、進行形にできない動詞でした。「今ずっと知っている」状態を表したいとき、進行形は使えません。そこで現在完了の継続用法の出番になります。

  • 誤:I am knowing him for ten years.(状態動詞は進行形にできない)

  • 正:I have known him for ten years.(10年間知っている)

  • 誤:She is living here since 2015.(状態動詞は進行形にできない)

  • 正:She has lived here since 2015.(2015年からここに住んでいる)

「ずっと〜している」を表したくて進行形を使ってしまうのは、日本語話者がやりがちなミスです。状態動詞でずっと続いていることを言いたいときは、現在完了の継続用法——これが正解です。

落とし穴5:「結果」と「完了」の区別にこだわりすぎる

4用法(継続・経験・完了・結果)で学んだ人がはまる落とし穴です。「I have lost my key. は完了?結果?」のように、用法の分類で迷ってしまうケースがあります。

セクション4で説明したとおり、本記事では「結果」を「完了」に吸収しています。区別すること自体に意味がほとんどないからです。動作が完了した/その結果が今に及ぶ——この両方を完了用法の中身として理解すれば十分で、どちらか一方の用法名を選ぶ必要はありません。

用法の分類を選ぶことが目的ではなく、現在完了形が表したいことを正しく理解するのがゴールです。「過去の動作が現在につながっている」という核心がつかめていれば、用法の名前は二の次で構いません。

落とし穴6:現在完了形を「過去のこと」だと思い込む

最後に、最も根の深い誤解です。「現在完了」という名前なのに「過去のことを表す」と感じてしまい、過去形と同じ感覚で使ってしまうミスです。

セクション2で強調したとおり、現在完了形は現在の話です。形のうえでも have / has という現在形の動詞が軸になっていて、表しているのは「今、こういう状況にある」という現在の報告です。

  • I have lost my key.(今、鍵をなくした状況にある)
  • She has lived here for ten years.(今、彼女は10年住んでいる状況にある)
  • I have been to Paris.(今、パリに行った経験を持っている)

過去の動作に触れてはいますが、語っているのはすべて今のこと。「現在完了は現在の話」——この一文を、迷ったときの原点に置いてください。

まとめ早見表

現在完了形の3つの用法

用法 表すもの 例文 目印になる語
継続 過去から現在まで続いている I have lived here for ten years. for, since, how long
経験 今に残っている過去の経験 I have been to Paris. ever, never, once, twice, before
完了 完了した動作の結果が今に及ぶ I have just finished. just, already, yet, recently

形の作り方

肯定 have / has + 過去分詞 She has finished.
否定 have / has + not + 過去分詞 She hasn’t finished.
疑問 Have / Has + 主語 + 過去分詞? Has she finished?

短縮形:I’ve / you’ve / he’s / she’s / we’ve / they’ve、否定は haven’t / hasn’t。

過去分詞 — 5つ目の変化形

種類 過去形と過去分詞の関係
規則動詞 同じ形(-ed) play - played - played
不規則:3形同じ 三つとも同じ put - put - put
不規則:過去形=過去分詞 過去形と過去分詞が同形 have - had - had / make - made - made
不規則:3形違う 三つとも違う go - went - gone / see - saw - seen

過去形 vs 現在完了 — 「した問題」の決着

過去形 現在完了形
中心イメージ 今と切れた、終わった世界 過去と現在をつなぐ
軸足 過去 現在
目印 yesterday, last week, ago, in 2010 for, since, just, already, yet, ever
「今」を含むか 含まない 含む
I lost my key.(昔なくした) I have lost my key.(なくして、今も困っている)

判断の核心:今とのつながりを言いたいなら現在完了、今と切れた過去の話なら過去形

つまずきチェックリスト

こんなとき 正しくは
yesterday, ago がある 迷わず過去形(現在完了とは共存しない)
パリに行った経験を聞く Have you been to Paris?(gone は「行ってしまった」)
Have you a car? と言いたくなる 本動詞 have なら Do you have a car?
「ずっと知っている」を言いたい 状態動詞は現在完了の継続用法(I have known …)
「結果」か「完了」か悩む 用法の名前にこだわらず、「現在につながっている」感覚を理解する
過去形と同じ感覚で使う 現在完了は現在の話、と原点に戻る

判断に迷ったら、現在完了の中心イメージに戻ってください——現在完了形は、過去の出来事を現在と結びつけてとらえる形。軸足は現在にある。「これは今の話か、過去の話か」と自問するだけで、過去形との使い分けはほとんど解決します。

次に読むとよい記事

現在完了形までで、時制シリーズの主要な形がそろいました。「した問題」に決着がついたところで、時制学習を深めるか、別の文法領域へ進むかの分かれ道です。

  • 過去形 — 現在完了形と対になる形です。「した問題」の決着を、過去形側の視点からも確認したいときに。
  • 現在進行形 — 「ている問題」を扱った記事。「した問題」と並ぶ、日本語話者の二大難所です。あわせて読むと、日本語との食い違いがどこで起きるかが体系的に見えてきます。
  • 過去完了形(作成予定)— 「過去のある時点から見て、さらに前の出来事」を表す形です。現在完了形の理屈を「現在から見て」ではなく「過去から見て」に置き換えたもの——という関係になっています。
  • 助動詞(作成予定)— have + 過去分詞という構造は、助動詞 + 原形(will go, can go)の親戚です。「動詞の助っ人」というしくみを理解すると、英語の文の組み立てが一気に見通しやすくなります。