第2章 時制

現在完了形
─ 過去の出来事を「今」に引き寄せる力

"I lost my key." と "I have lost my key." ── どちらも「鍵をなくした」話なのに、何が違うのでしょうか。
過去形は「あのとき鍵をなくした」と過去の出来事を述べるだけ。
現在完了形は「鍵をなくして、今も手元にない」と、過去の出来事が現在に及ぼす影響まで伝えます。
この「過去と現在の架け橋」の感覚を掴めば、現在完了形は丸暗記ではなく「自然にわかる」形になります。

1現在完了形とは何か

日本語には現在完了形にぴったり対応する表現がありません。 「食べた」「行った」「知っている」── 日本語では過去形で済んでしまう場面でも、英語はわざわざ形を変えて「今とのつながり」を示します。

たとえば "It has stopped raining." は、単に「雨がやんだ」という過去の出来事を報告しているのではありません。 窓の外を見ながら「あ、雨やんだよ(今、晴れてるよ)」と、今の状況を伝えている文です。

つまり現在完了形とは、過去に起きた出来事を「現在」の視点から述べる形です。 常に意識の中心は「今」にあり、そこに過去のできごとを引き寄せてくるのです。

💡 ここが本質:現在完了形 = 「過去と現在の架け橋」

過去形:過去のできごとを「あの時」の話として述べる。現在とは切り離されている。

現在完了形:過去のできごとを「今」に引き寄せて述べる。現在に影響・つながりがある。

現在完了形の本質は、過去の出来事が今に影響を及ぼしていること。過去に起きたことと、今の状態が一本の線でつながっている ── それが現在完了形の正体です。

2ネイティブの感覚 ─ have + 過去分詞の「持っている」感覚

現在完了形の形は have + 過去分詞 です。 この have は助動詞として使われていますが、もともとの「持っている」というイメージが根底にあります。

ネイティブスピーカーが "I have lost my key." と言うとき、頭の中ではどんなイメージが動いているのでしょうか。

🧠 ネイティブの感覚:have =「持っている」→ 過去分詞の状態を「今持っている」

have の根っこのイメージは「持っている」。過去分詞は「完了した動作・状態」を表します。

この2つを合わせると、「完了した動作・状態を、今この手に持っている」── それが現在完了形の感覚です。

"I have lost my key." → 「鍵をなくした」という状態を今持っている → だから今、鍵がない。

過去形が「過去に置いてくる」感覚なら、現在完了形は「今まで引きずってくる」感覚。この違いが、すべての用法に通じます。

📝 例文で確認:過去形と現在完了形の対比
I lost my key yesterday.
昨日、鍵をなくした。(過去の出来事を報告。今は見つかったかもしれない)
I have lost my key.
鍵をなくしてしまった。(今も手元にない。困っている)
She went to Paris last summer.
彼女は去年の夏、パリに行った。(過去の事実を述べているだけ)
She has been to Paris twice.
彼女はパリに2回行ったことがある。(今の時点での経験として語っている)

34つの用法 ─ 完了・結果・経験・継続

現在完了形には4つの用法がありますが、根っこの感覚はすべて同じ ──「過去のことを今に引き寄せる」です。 引き寄せた結果として、完了・結果・経験・継続という4つの意味が生まれます。

📏 文法ルール:現在完了形

have / has + 過去分詞

主語が三人称単数(he / she / it)のとき → has を使う。それ以外は have

※ 疑問文:Have you finished ...? / Has she finished ...?
※ 否定文:I have not (haven't) finished ... / She has not (hasn't) finished ...
※ 短縮形:I've / You've / He's / She's / We've / They've

完了 ─「ちょうど終わったところ」

間近に起きたできごとを「今、そうなった」と伝える用法です。 窓を開けて「雨やんだよ!」、宿題を終えて「できた!」── 意識は常に「今」にあります。

📝 例文:完了
It has just stopped raining.
雨がちょうどやんだところだ。(今、晴れている)
I have already finished my homework.
もう宿題を終えてしまった。(今、終わった状態にある)
Have you finished your report yet?
レポートはもう終わりましたか。(まだなら急いでほしい)

結果 ─「だから今、こうだ」

過去の行為を述べることで、「だから今はこういう状態だ」という現在の状況を暗示する用法です。 単に過去のことを報告しているのではなく、「今」への含みがポイントです。

📝 例文:結果
She has gone to the hair salon.
彼女は美容室に行ったよ。(だから今ここにいない)
I have lost my wallet.
財布をなくしてしまった。(だから今、お金がない)
I have broken my leg, so I can't go with you.
足の骨を折ってしまったから、一緒には行けない。(今も骨折の状態が続いている)

経験 ─「したことがある」

過去のできごとを「今の自分がもっている経験」として語る用法です。 過去形が「あのとき、した」と過ぎ去ったことを述べるのに対し、現在完了形は「その経験が今の自分の一部」として引き寄せています。

📝 例文:経験
Have you ever been to Kyoto?
京都に行ったことはありますか。
I have never seen such a beautiful sunset.
こんなに美しい夕焼けは見たことがない。
He has visited London three times.
彼はロンドンを3回訪れたことがある。

継続 ─「ずっと〜している」

過去のある時点から現在に至るまで、同じ状態がずっと続いていることを表す用法です。 過去から「今」に向かって時の流れが引き寄せられてくるイメージです。

📝 例文:継続
We have been teammates for three years.
私たちは3年間ずっとチームメートだ。(今もチームメートである)
I have lived in Tokyo since 2020.
2020年から東京に住んでいる。(今も住んでいる)
I have known him for a long time.
長い間、彼のことを知っている。(今も知っている)
🔬 ワンポイント:各用法でよく使う副詞・表現

完了:just(ちょうど)、already(すでに)、yet(もう/まだ)

経験:ever(今までに)、never(一度も〜ない)、before(以前に)、~ times(〜回)

継続:for +期間(〜の間)、since +起点(〜から/〜以来)、How long ...?(どのくらい〜?)

ただし、これらは「目印」に過ぎません。副詞がなくても現在完了形は使われます。大切なのは「今に引き寄せる」感覚です。

用法 意味
完了 ちょうど〜した I've just finished it.
結果 〜した(だから今こうだ) She has gone out.(今いない)
経験 〜したことがある I've been to Italy twice.
継続 ずっと〜している I've lived here for ten years.

4have been to と have gone to の区別

「〜に行ったことがある」「〜に行ってきた」を英語にするとき、beengone のどちらを使うかで意味がまったく変わります。 入試でも頻出のポイントです。

⚠️ 落とし穴:been と gone を混同しない

have been to A:「Aに行ったことがある(経験)」/「Aに行って帰ってきたところだ(完了)」

→ 話し手は今ここにいる。行って、戻ってきている。

have gone to A:「Aに行ってしまった(結果)」

→ 話し手(または話題の人物)は今ここにいない。行ったきりで、まだ戻っていない。

🧠 ネイティブの感覚:be =「いる」、go =「立ち去る」

been は be(いる)の過去分詞。「ある場所にいた」→「行ったことがある」。行って、いて、帰ってきた ── 往復のイメージです。

gone は go(行く=立ち去る)の過去分詞。「立ち去った状態を今持っている」→「行ってしまって、今いない」。一方通行のイメージです。

📝 例文で確認:been to vs gone to
I have been to Nara, and now I'm heading to Kyoto.
奈良に行ってきたところで、これから京都に向かいます。(今ここにいる)
He has been to Italy twice.
彼はイタリアに2回行ったことがある。(経験。今はここにいる)
Where is Mary? ── She has gone to Hokkaido.
メアリーはどこ?── 北海道に行ってしまったよ。(今ここにいない)

5現在完了と一緒に使えない表現

現在完了形は「今に引き寄せる」形です。 ところが、明確に過去の一時点を指す語句と一緒に使うと、「今の話なの? 過去の話なの?」と意味が矛盾してしまいます。 そのため、以下のような語句とは同じ文中で使えません。

⚠️ 落とし穴:現在完了と併用できない語句

yesterday(昨日)

last night / last week / last year(昨夜/先週/去年)

... ago(〜前)

then(その時)

when ...?(いつ〜?)── 疑問詞の when

when I was a child(子どもの頃)

just now(たった今/ついさっき)── 過去時制で用いる

✕ 誤:I have eaten wild deer last year.

○ 正:I ate wild deer last year.(去年、野生の鹿を食べた)

○ 正:I have eaten wild deer.(野生の鹿を食べたことがある ── last year なし)

🧠 ネイティブの感覚:なぜ「明確な過去」と併用できないのか

これは単なるルールではなく、感覚的に矛盾するからです。

現在完了形は「過去を今に引き寄せる」形。意識の中心は常に「今」にあります。

ところが yesterday や last year は「あの時」と過去の一点を確定させる語句。意識を過去に固定します。

「今に引き寄せる」のに「過去に確定させる」── この2つは同時に成り立ちません。だから不自然なのです。

ただし、since yesterday(昨日から今まで)のように、過去から現在へ向かう表現なら OK です。

🔬 ワンポイント:just と just now の違い

just(ちょうど)→ 現在完了と一緒に使える。 I've just arrived.

just now(たった今/ついさっき)→ 現在完了とは併用不可。過去時制で使う。 She left just now.

just 単体は「ピッタリ」の感覚で現在との親和性が高いのに対し、just now は「ついさっきの過去の一点」を指すため、過去形とセットになります。

6つながりマップ

現在完了形の基本を学んだら、次のトピックへ進みましょう。

  • → G-2-2 過去形:「過去形は距離感をもつ」── この感覚と対比することで、現在完了形の「今に引き寄せる」感覚がより鮮明になります。
  • → G-2-6 完了形のバリエーション:過去完了形(had + 過去分詞)、未来完了形(will have + 過去分詞)、現在完了進行形(have been + -ing)など、完了形ファミリーの全体像を学びます。
  • → G-2-7 時制の一致:主節が過去形のとき、従属節の現在完了形はどうなるか。時制の連動ルールを確認しましょう。

📋まとめ

  • 現在完了形 = 過去の出来事を「今」に引き寄せる形。意識の中心は常に現在にある。
  • have の「持っている」感覚:過去分詞で表される状態を「今、手に持っている」── それが現在完了の正体。
  • 4つの用法(完了・結果・経験・継続)はすべて「今に引き寄せる」感覚から派生している。
  • have been to A(行ったことがある/行って帰ってきた)と have gone to A(行ってしまった=今いない)を区別する。
  • yesterday, ago, last year, when ...? など明確な過去を示す語句とは併用できない。「今に引き寄せる」感覚と矛盾するため。
  • 覚え方の核心:過去形が「過去に置いてくる」なら、現在完了形は「今まで引きずってくる」

確認テスト

Q1. 現在完了形の本質を一言で表すと何ですか。

▶ クリックして解答を表示過去の出来事を「今」に引き寄せて述べる形。意識の中心は常に現在にあり、過去のできごとが現在に影響・つながりを持っていることを表す。

Q2. "I have lost my key." と "I lost my key." の違いを説明してください。

▶ クリックして解答を表示現在完了形 "I have lost my key." は「鍵をなくして、今も手元にない」と現在の状況を伝えている。過去形 "I lost my key." は「(あの時)鍵をなくした」と過去の出来事を述べているだけで、今は見つかったかもしれない。

Q3. have been to A と have gone to A の違いは何ですか。

▶ クリックして解答を表示have been to A は「Aに行ったことがある(経験)」または「Aに行って帰ってきた(完了)」。話し手は今ここにいる。have gone to A は「Aに行ってしまった(結果)」。話題の人物は今ここにいない。

Q4. 次の文が不自然な理由を説明してください。
I have visited Osaka last year.

▶ クリックして解答を表示現在完了形は「今に引き寄せる」形で意識の中心が現在にあるのに対し、last year は過去の一時点を確定させる語句。「今の話」と「過去の確定」が矛盾するため併用できない。正しくは "I visited Osaka last year."(過去形)または "I have visited Osaka."(last year なし)。

9入試問題演習

この記事で学んだ内容を、入試形式の問題で確認しましょう。

A 基礎レベル

2-5-1 A 基礎 現在完了と過去 空所補充

There is a new road to the freeway. They (  ) it yesterday.

  • ① are opening
  • ② have opened
  • ③ opened
  • ④ would open
▶ クリックして解答・解説を表示
解答

③ opened

解説

判断のポイント:文末に yesterday という明確な過去を示す語句があります。

現在完了形は yesterday, ago, last year などの「過去の一時点を確定させる語句」とは併用できません。したがって ② have opened は不可。過去時制の ③ opened が正解です。

「高速道路への新しい道路がある。昨日、開通した」

B 発展レベル

2-5-2 B 発展 have been to / have gone to 空所補充

Mary is absent today. She (  ) to Hokkaido.

  • ① comes
  • ② has been
  • ③ has gone
  • ④ has arrived
▶ クリックして解答・解説を表示
解答

③ has gone

解説

判断のポイント:"Mary is absent today."(メアリーは今日休んでいる)から、メアリーは今ここにいないことがわかります。

has gone to A は「Aに行ってしまった(今いない)」。has been to A は「Aに行ったことがある/行って帰ってきた」で、話題の人物が今ここにいる場合に使います。

メアリーは今いないので、③ has gone が正解です。

「今日、メアリーは休んでいる。彼女は北海道に行ってしまったのだ」

C 応用レベル

2-5-3 C 応用 現在完了と過去 正誤判定

次の文の下線部に誤りがある場合、正しく直しなさい。誤りがなければ「正しい」と答えなさい。

I haven't seen Tom for a long time. When have you seen him last?

▶ クリックして解答・解説を表示
解答

have you seen → did you see

解説

判断のポイント:前半の "I haven't seen Tom for a long time." は「長い間トムに会っていない」で、for a long time(継続の期間)を伴う現在完了として正しい文です。

後半の "When have you seen him last?" が誤り。疑問詞 when は「いつ?」と過去の一時点を尋ねる語句であり、現在完了形とは併用できません。

"When did you see him last?"(最後に彼に会ったのはいつですか)と過去形に直す必要があります。

「私はトムに長い間会っていません。あなたが最後に彼に会ったのはいつですか」

得点の差がつくポイント
  • 前半の haven't seen ... for a long time は正しいので、つられて後半の have you seen も正しいと判断してしまうミスに注意
  • 疑問詞 when は「過去の一時点」を問う語 → 現在完了と併用不可、という原則を確実に押さえる