こんにちは、すなおです!
「現在完了形(have + 過去分詞)」について、こんなことで困ってませんか?
- ✅ 過去形と現在完了の違いが、いつまで経っても分からない
- ✅ 学校で習ったけど、いつ
have + 過去分詞を使うか曖昧 - ✅ 「完了・経験・継続」と聞いても、結局ピンとこない
- ✅ 現在完了進行形(
have been -ing)との違いも謎
大丈夫です。現在完了は「過去から今まで、つながってる」の1つのイメージだけ押さえれば全部解決します。
この記事では、現在完了の基本3用法+過去形との違い+現在完了進行形との使い分けまで、これ1本で完結する完全ガイドにしました。
― さっそく見ていこう ―

現在完了って、過去形と何が違うのか今でもよくわからないんです…

日本語にない感覚だから当然! 「現在完了 = 過去から今までつながってる」のイメージだけ覚えれば、3つの使い方は全部繋がるよ。
そもそも「現在完了」って何?
現在完了は have(has)+ 過去分詞 の形で使う表現。過去形は「過去のある一点」を指すのに対し、現在完了は「過去から今まで」のつながりを表します。
| 時制 | イメージ | 例文 |
|---|---|---|
| 過去形 | 過去の1つの点(今と切り離されてる) | I studied English. (英語を勉強した) |
| 現在完了 | 過去から今までの線(今とつながってる) | I have studied English for 8 years. (8年間、英語を勉強してる) |

過去形 studied は「英語を勉強した(で、今はどうか分からない)」。
現在完了 have studied は「8年前から今までずっと勉強してる」。
同じ「勉強した」でも、今とのつながりを伝えられるのが現在完了です。
現在完了の3つの使い方
「過去から今までつながってる」イメージを土台に、現在完了には3つの用法があります。

現在完了の3用法
- ① 完了:「ちょうど〜したところ」
- ② 経験:「〜したことがある」
- ③ 継続:「ずっと〜している」
用法① 完了|「ちょうど〜したところ」
過去から今までの流れの中で、「ちょうど今、終わった!」を強調する使い方。
- I have just finished my homework.(ちょうど宿題を終えたところ)
- She has already left.(彼女はもう出発した)
- Have you eaten dinner yet?(もう夕飯食べた?)
💡 完了用法のサインワード
just(ちょうど)/already(もうすでに)/yet(もう・まだ)が一緒に使われやすい。
これらの単語が出てきたら「完了」用法の可能性が高い!
学校で教わるルール:I have just finished my homework.(現在完了 + just)
ネイティブの口語:I just finished my homework. も普通に使う(特にアメリカ英語)
→ どちらも通じます。テストや書く時は「have + just + 過去分詞」が安全。
日常会話では過去形 + just でも問題なし。
💡 ネイティブの発音のリアル:実は “I’ve just finished” の “I’ve” を弱く・短く発音してて、聞き取りにくく「I just finished」に聞こえてることも多いんです。I(‘ve) just finished みたいなイメージ。書き起こすと過去形に見えるけど、実は現在完了を言ってるパターンもあります。
ちなみに、ネイティブの友達は「めんどくさいから I just finished で言ってる」って言ってました笑
用法② 経験|「〜したことがある」
「今までに(少なくとも1回)〜した経験がある」を表す使い方。
- I have been to Hawaii.(ハワイに行ったことがある)
- She has never tried sushi.(彼女は寿司を食べたことがない)
- Have you ever seen snow?(雪を見たことある?)
💡 経験用法のサインワード
ever(今までに)/never(一度もない)/before(以前)/once / twice / three times(〜回)
これらの単語=経験用法のサイン。
過去形:I went to Hawaii.「ハワイに行った」(事実だけ)
現在完了:I have been to Hawaii.「ハワイに行ったことがある」(経験)
→ 「経験あり」を伝えたいなら現在完了。
have been to がワンセット。

私、ハワイ行ったことを話したい時、いつも “I went to Hawaii.” って言ってました…!「行ったことがある」なら have been to なんですね。
用法③ 継続|「ずっと〜している」
過去のある時点から今までずっと続いている状態を表す使い方。
- I have lived in Tokyo for 10 years.(10年間、東京に住んでる)
- She has known him since 2020.(2020年から彼を知ってる)
- We have been friends for a long time.(長いこと友達です)
💡 継続用法のサインワード
for + 期間(〜の間)/since + 開始時点(〜から)
この2つが出てきたら「継続」用法。
過去形:I lived in Tokyo for 10 years.
→ 10年住んでた(今はもう住んでない)
現在完了:I have lived in Tokyo for 10 years.
→ 10年住んでる(今も住んでる可能性が高い)
→ 「今も続いてる」を伝えたい時は現在完了。
for / since とセットで覚える。
豆知識:for と since の使い分け
継続用法では for と since がよく出てくるけど、使い方が違います。
📌 for 3 years(3年間)
📌 for a long time(長い間)
📌 for 2 hours(2時間)
since + 開始時点(いつから?)
📌 since 2020(2020年から)
📌 since last week(先週から)
📌 since I was a child(子供の頃から)
「どれくらい?」なら for、「いつから?」なら since。これだけ覚えればOK。
3用法の見分け方|サインワードで一発判断
3用法は、一緒に使われる単語(サインワード)で見分けられます。
| 用法 | サインワード | 意味 |
|---|---|---|
| ① 完了 | just / already / yet | ちょうど〜した |
| ② 経験 | ever / never / before / 〜 times | 〜したことがある |
| ③ 継続 | for / since | ずっと〜している |
現在完了 vs 現在完了進行形|何が違う?
もう一段深い話。現在完了進行形(have been + -ing)という形もあります。「継続」とほとんど同じ意味ですが、微妙な使い分けがあります。

使い分けの基本
- 🔵 現在完了(have + 過去分詞):状態の継続・完了・経験
- 🟠 現在完了進行形(have been + -ing):動作の継続(ずっと続いてる動き)
判断は動詞のタイプで決まります。
動作を表す動詞(run / eat / read / write など)
動作系の動詞は、現在完了と現在完了進行形で意味がはっきり違う:
- I have run for 3 hours.(3時間走った=もう走り終わった)
- I have been running for 3 hours.(3時間走り続けている=まだ走ってる)

💡 3つの時制を比べると
過去形「I ran for 3 hours.」→ 3時間走った(過去の一点で完了・今は関係ない)
現在完了「I have run for 3 hours.」→ 3時間走ってきた(過去から今までのつながり・今は走り終わってる)
現在完了進行形「I have been running for 3 hours.」→ 3時間ずっと走り続けてる(過去から今まで途切れずに継続・何回も繰り返してる感)
状態も動作も表せる動詞(work / live / study など)
このタイプは、どちらを使ってもほぼ同じ意味:
- I have lived here for 10 years.(10年住んでる)
- I have been living here for 10 years.(10年住み続けてる)
どちらも通じます。実用上はほぼ同じ意味で、テストでもどちらも◯。日常会話でも気にせず使えます。
💡 ネイティブの微妙な感覚
気にする人向けに、ネイティブの感覚で言うと:
I have lived here for 10 years. → 「ここに根を張ってる」感(これからもずっといそう)
I have been living here for 10 years. → 「(出張や仮住まいで)住んでる」感(一時的・将来移るかも)
→ ネイティブ的にもほぼ同じ意味とのこと!気にせず使ってOK。
状態を表す動詞(know / love / believe / want など)
状態動詞は進行形にしないのが学校英語のルール。基本は現在完了一択:
- ✅ I have known him for 5 years.(5年彼を知ってる)— こちらが標準
- △ I have been knowing him for 5 years. — ネイティブは普通に会話で使うけど、文法ルール的にはNG
厳密には「状態動詞は進行形で使わない」が文法ルール(だから “I have been knowing him” は文法的にはNG)。
だけど現代の口語ではネイティブが普通に使ってます。有名な例:McDonald’s の “I’m lovin’ it”(love は典型的な状態動詞)。
→ テスト・ライティングは標準形(have known)一択。
→ 口語では使ってる人もいるけど、自分から無理に使う必要はありません。

俺、”I’ve been knowing him” って普通に使ってたわ! 教科書英語ではNGだったのか…!
ネイティブの感覚|現在完了は「線」のイメージ
もう一段深く理解するために、ネイティブの感覚を伝えます。
過去形が「点」のイメージなら、現在完了は「線」のイメージ。過去のある時点から今まで、1本の線でつながってる感覚です。
💡 イメージで覚える
過去形:「I studied English.」
→ 過去のある日に勉強した(その後どうかは不明・点)
現在完了:「I have studied English for 8 years.」
→ 8年前から今までずっと勉強してる(線)
この「線」感覚が分かると、3用法も全部つながります:
- 完了:線の終点が「今、ちょうど終わった!」
- 経験:線のどこかに「やった点」が刻まれてる
- 継続:線が今もずっと続いている
迷ったときは「これ、点?線?」と自問してみてください。線なら現在完了です。
迷ったときのフローチャート
現在完了か過去形か迷ったら、このフローで判断:

2つの質問で判断!
Q1. 「今」とつながってる?(影響が今もある?)
→ Yes:現在完了(have + 過去分詞)
→ No(過去で完結):過去形
Q2.(Q1 で現在完了の場合)どの用法?
→ just / already / yet あり:完了
→ ever / never / before あり:経験
→ for / since あり:継続
現在完了 定着クイズ
覚えたかチェック!次の( )に入る正しい時制は?
Q1. I ( ) my homework. (ちょうど終わった)
Q2. She ( ) to Paris twice. (2回行ったことがある)
Q3. We ( ) here for 5 years. (5年住んでる)
Q4. I ( ) sushi yesterday. (昨日食べた)
Q5. ( ) you ever ( ) snow? (雪を見たことある?)
▶ 答えを見る
Q1. have just finished(完了)
Q2. has been(経験)
Q3. have lived(継続)
Q4. ate(過去形・yesterday があるから過去で完結)
Q5. Have / seen(経験・ever のサイン)
まとめ|現在完了は「過去と今のつながり」
- ✅ 現在完了 = 過去から今までのつながり
- ✅ 過去形 = 過去の1つの点(今と切り離されてる)
- ✅ 3用法:完了 / 経験 / 継続(サインワードで見分ける)
- ✅ 進行形(have been -ing)= 動作がまだ続いてる感じ
- ✅ 状態動詞(know / love / believe)は進行形にできない

「過去から今までつながってる」イメージさえ持てば、現在完了は怖くない! サインワードを覚えるだけで、3用法は自動で見分けられるようになるよ。
関連記事|英文法をもっと深く学びたい人へ
- 👉 英会話のための英文法完全ガイド — 文法のぜんぶ
- 👉 the の使い方〜ルールは4つだけ
- 👉 英文の作り方は5パターン
- 👉 英会話ロードマップ


コメント
[…] という方は現在完了と過去形の違い!〜現在完了の3つの使い方!〜の記事で現在完了の使い方も詳しく紹介していますのでこちらも参考にしてみてください。 […]