JavaScript is required

英語 現在完了 使い方: 3つの用法を完全解説【経験・継続・結果】

最終更新日: 2026年3月3日

英語の現在完了形の使い方 - Banner

英語の現在完了形って、日本人学習者にとって本当にややこしいですよね。過去形との違いがわかりにくいし、どんな場面で使えばいいのか迷ってしまう方も多いはず。でも実は、現在完了形にはたった3つの基本的な用法しかないんです。この記事では、それぞれの用法を具体的な例文と一緒に解説していきます。

現在完了形の基本構造

現在完了形は「have/has + 過去分詞」という形で作ります。この時制は、過去のある時点から現在までのつながりを表現するために使われるんです。

主語が I, you, we, they の場合は「have」を使い、he, she, it の場合は「has」を使います。例えば:

  • I have finished my homework. (私は宿題を終えました)
  • She has lived here for five years. (彼女はここに5年間住んでいます)

過去分詞の作り方は動詞によって異なります。規則動詞の場合は語尾に「ed」をつけるだけですが、不規則動詞は個別に覚える必要があります。go の過去分詞は gone、eat は eaten、see は seen といった具合です。

現在完了形の3つの用法

現在完了形には「経験」「継続」「結果」という3つの主な用法があります。それぞれ見ていきましょう。

経験用法

経験用法は、過去から現在までの間に「〜したことがある」という経験を表します。人生の中で何かを経験したかどうかを話す時に使うんです。

よく一緒に使われる表現:

  • ever (今までに)
  • never (一度も〜ない)
  • once (一度)
  • twice (二度)
  • before (以前に)

具体例を見てみましょう:

I have been to Tokyo three times. (私は東京に3回行ったことがあります)

Have you ever eaten sushi? (あなたは今までにお寿司を食べたことがありますか?)

She has never seen snow before. (彼女は以前に雪を見たことがありません)

経験用法では、「いつ」という具体的な時点は重要ではありません。大切なのは、その経験が今の自分につながっているということです。

継続用法

継続用法は、過去のある時点から現在まで、ある状態や動作が続いていることを表します。「ずっと〜している」という意味ですね。

よく使われる表現:

  • for (〜の間)
  • since (〜以来)
  • How long (どのくらいの間)

例文:

I have studied English for ten years. (私は10年間英語を勉強しています)

He has worked at this company since 2020. (彼は2020年からこの会社で働いています)

How long have you known each other? (あなたたちはどのくらいの間お互いを知っていますか?)

継続用法で注意したいのは、for と since の使い分けです。for の後には期間 (three days, two weeks など) が来て、since の後には起点となる時点 (Monday, last year など) が来ます。

結果用法

結果用法は、過去の動作が現在に影響を及ぼしている状況を表します。何かが完了して、その結果が今も続いているという意味です。

よく使われる表現:

  • just (ちょうど)
  • already (すでに)
  • yet (まだ、もう)

例文:

I have just finished my homework. (私はちょうど宿題を終えたところです)

She has already left. (彼女はすでに出発しました)

Have you done your homework yet? (あなたはもう宿題をやりましたか?)

結果用法では、動作が完了したことよりも、その結果として現在どうなっているかが重要なんです。

現在完了形と過去形の違い

ここが多くの人がつまずくポイントです。現在完了形と過去形は、どちらも過去の出来事について話しますが、使い方が全然違います。

過去形は、過去の特定の時点で起こった出来事を表します。その出来事は完全に過去のもので、現在とは切り離されています。

I went to Tokyo last year. (私は去年東京に行きました)

この文では、「去年」という具体的な時点が示されていて、その出来事は過去に完結しています。

一方、現在完了形は過去から現在までのつながりを表します。

I have been to Tokyo. (私は東京に行ったことがあります)

この場合、いつ行ったかは重要ではなく、「東京に行った経験がある」という事実が現在の自分につながっているんです。

もう一つ重要な違いがあります。過去形は yesterday, last week, in 2020 などの具体的な過去の時点を示す表現と一緒に使えますが、現在完了形はこれらの表現とは使えません。

正しい: I visited Paris last month. 間違い: I have visited Paris last month.

現在完了形を使う場合は、具体的な時点ではなく、期間や頻度を表す表現を使います。

現在完了形のルールと注意点

現在完了形を正しく使うためには、いくつかのルールを覚えておく必要があります。

疑問文の作り方

疑問文を作る時は、have/has を文頭に持ってきます。

Have you finished your work? (あなたは仕事を終えましたか?)

Has she arrived yet? (彼女はもう到着しましたか?)

否定文の作り方

否定文は have/has の後に not を入れます。短縮形は haven't と hasn't です。

I have not seen that movie. (私はその映画を見ていません)

She hasn't called me yet. (彼女はまだ私に電話してきていません)

状態動詞と動作動詞

継続用法では、動詞の種類によって意味が変わることがあります。know, like, have (所有) などの状態動詞は、そのまま継続の意味になります。

I have known him for five years. (私は彼を5年間知っています)

でも、study, work, live などの動作動詞も継続用法で使えます。

I have lived here since 2022. (私は2022年からここに住んでいます)

I have done と I had done の違い

これも重要なポイントです。I have done は現在完了形で、I had done は過去完了形です。

現在完了形 (have done) は、過去から現在までのつながりを表します。話している今の時点が基準です。

I have finished my homework. (私は宿題を終えました)

過去完了形 (had done) は、過去のある時点よりもさらに前に起こったことを表します。過去のある時点が基準になるんです。

When I arrived, she had already left. (私が到着した時、彼女はすでに出発していました)

この文では、「私が到着した」という過去の時点よりも前に「彼女が出発した」という出来事が起こっています。

過去完了形は、過去の2つの出来事の前後関係を明確にする時に使います。基準となる時点が現在なら現在完了形、過去なら過去完了形という使い分けですね。

よくある間違いと対策

日本人学習者がよくやってしまう間違いをいくつか紹介します。

間違い1: 過去の時点を示す表現との併用

間違い: I have met him yesterday. 正しい: I met him yesterday.

yesterday, last week, ago などの表現がある場合は、過去形を使います。

間違い2: 継続用法での動詞の選択

間違い: I have been knowing him for three years. 正しい: I have known him for three years.

know のような状態動詞は、現在完了進行形 (have been doing) にはできません。

間違い3: for と since の混同

間違い: I have lived here since five years. 正しい: I have lived here for five years. または I have lived here since 2021.

期間には for、起点には since を使います。

実践的な例文で理解を深める

それぞれの用法を使った実践的な例文をもっと見てみましょう。

経験用法の例文

Have you ever tried Japanese food? (あなたは日本食を試したことがありますか?)

I have read this book twice. (私はこの本を2回読んだことがあります)

They have never traveled abroad. (彼らは海外旅行をしたことがありません)

継続用法の例文

We have been friends since childhood. (私たちは子供の頃からの友達です)

She has played the piano for fifteen years. (彼女は15年間ピアノを弾いています)

How long have you been here? (あなたはどのくらいここにいますか?)

結果用法の例文

I have lost my keys. (私は鍵をなくしてしまいました)

The train has just arrived. (電車がちょうど到着しました)

Have you finished eating yet? (あなたはもう食べ終わりましたか?)

時制の使い分けをマスターする

英語の時制は、話し手が出来事をどう捉えているかを表します。現在完了形を使うか過去形を使うかは、その出来事を現在とつながっているものとして捉えるか、完全に過去のこととして捉えるかの違いなんです。

例えば、同じ「パリに行った」という経験でも:

I went to Paris in 2023. (私は2023年にパリに行きました) → 具体的な時点での出来事として捉えている

I have been to Paris. (私はパリに行ったことがあります) → 人生経験の一つとして、現在の自分につながるものとして捉えている

この違いがわかると、現在完了形の本質が見えてきます。

まとめ: 現在完了形を自然に使えるようになるために

現在完了形は、経験、継続、結果という3つの用法を理解すれば、そこまで難しくありません。大切なのは、過去の出来事が現在とどうつながっているかを意識することです。

たくさんの例文に触れて、それぞれの用法がどんな場面で使われているかを体感することが上達への近道です。映画やドラマ、YouTubeなどで実際の会話を聞いていると、ネイティブスピーカーがどんな時に現在完了形を使っているかがわかってきます。

もし実際のコンテンツで現在完了形の使い方を学びたいなら、ミガクのブラウザ拡張機能がめちゃくちゃ便利です。NetflixやYouTubeを見ながら、わからない表現を瞬時に調べられて、そのままフラッシュカードとして保存できるんです。文脈の中で学べるから、それぞれの用法の違いも自然に身につきます。10日間の無料トライアルがあるので、試してみる価値ありますよ。

今すぐ無料体験