英文法・構文の要点

時制 Level 2

2026年11月1日

  • 現在完了の3つの用法と,一緒に使えない表現
  • 過去完了/未来完了/完了進行形
  • 時・条件の副詞節:未来のことも現在形
詳しい説明を読む

時制 Level 1では,現在形・過去形・未来の表現と,進行形・完了形の基本的な考え方を整理しました。このページでは,入試で特によく問われる完了形の用法と,時・条件を表す副詞節の時制を詳しく見ていきます。

現在完了の3つの用法

完了・結果 / 継続 / 経験
どの用法かは,一緒に使われる語句と文脈から判断する

用法意味よく一緒に使われる語句
完了・結果〜したところだ,〜してしまったjust / already / yet / now
継続(ずっと)〜しているfor ~ / since ~ / How long ~?
経験〜したことがあるever / never / before / once / ~ times

The train has just left.
列車はちょうど出たところだ。

詳しい説明を読む

現在完了には,完了・結果,継続,経験の3つの用法があります。どの用法かは,just / already(完了),for / since(継続),ever / never / before(経験)など一緒に使われる語句と,文脈から判断します。

I have known him since I was a child.
私は子どものころから彼を知っている。

Have you ever been to Hokkaido?
北海道に行ったことはありますか。

have gone to と have been to

have gone to は「〜へ行ってしまった(今ここにいない)」という完了・結果を表します。have been to は「〜へ行ったことがある」という経験,または「〜へ行ってきたところだ」という完了を表します。

He has gone to Paris.
彼はパリへ行ってしまった。(今ここにいない)

I have been to Paris twice.
私はパリへ2回行ったことがある。

for と since

for の後ろには「期間」(for three years),since の後ろには「起点」(since 2020,since I was a child)がきます。

「〜してから…になる」の書き換え

次の4つの文は,ほぼ同じ内容を表します。入試の書き換え問題で頻出です。

He died ten years ago.
彼は10年前に亡くなった。

He has been dead for ten years.
彼が亡くなって10年になる。

It has been ten years since he died.(It is ten years since ~ とも言う)
彼が亡くなってから10年になる。

Ten years have passed since he died.
彼が亡くなってから10年が経った。

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

はっきりと過去の時点を表す語句 → 過去形を使う

現在完了と使えない例
過去の時点を表す語句yesterday / last ~ / ~ ago / in 2020 / just now
過去の時点をたずねる疑問詞When ~?

I saw him yesterday.(× have seen)
私は昨日彼に会った。

詳しい説明を読む

現在完了は「現在」とつながる時制なので,yesterday,last week,~ ago,when で始まる疑問文のように,はっきりと過去の時点を表す語句とは一緒に使えません。その場合は過去形を使います。

When did you finish your homework?(× When have you finished)
あなたはいつ宿題を終えたのですか。

just は現在完了と一緒に使えますが,just now(ついさっき)は過去の時点を表すので,過去形と一緒に使います。

過去完了

過去完了=had + 過去分詞
過去のある時点「まで」の完了・結果,継続,経験
過去の2つの出来事のうち,より前の出来事(大過去)

When I arrived at the station, the train had already left.
私が駅に着いたとき,列車はすでに出てしまっていた。

完了・結果
had already left
駅に着いた時点で,出てしまっていた
継続
had lived
引っ越した時点まで,住んでいた
経験
had never seen
訪れた時点まで,見たことがなかった
大過去
had given
なくすより前にもらった
詳しい説明を読む

過去完了は had + 過去分詞 の形で,過去のある時点「まで」の完了・結果,継続,経験を表します。また,過去の2つの出来事のうち,より前に起きた出来事(大過去)を表すのにも使います。

過去完了は,現在完了の基準点を「現在」から「過去のある時点」に移したものです。

I had lived in Kobe for five years before I moved to Tokyo.
東京に引っ越す前,私は神戸に5年間住んでいた。

I had never seen a panda until I visited China.
中国を訪れるまで,私はパンダを見たことがなかった。

She lost the watch that her father had given her.
彼女は父親がくれた腕時計をなくした。

前後関係が明らかな場合

before や after などによって出来事の前後関係が明らかな場合は,過去完了を使わずに過去形で表すこともよくあります。

I went out after I finished my homework.
私は宿題を終えてから出かけた。

未来完了

未来完了=will have + 過去分詞
未来のある時点「まで」の完了・結果,継続,経験

I will have finished my homework by the time you come back.
あなたが戻ってくるまでには,私は宿題を終えているだろう。

詳しい説明を読む

未来完了は will have + 過去分詞 の形で,未来のある時点「まで」の完了・結果,継続,経験を表します。by ~「~までに」などで,基準となる未来の時点を示すことが多い形です。

By next April, I will have lived here for three years.
来年の4月で,私はここに3年間住んでいることになる。

If I visit Kyoto again, I will have been there three times.
もう一度京都を訪れれば,私はそこへ3回行ったことになる。

完了進行形

have been + doing
動作動詞の「継続」を表す

I have known him for years.(状態動詞)
私は何年も前から彼を知っている。

状態動詞の継続
have known
現在完了
動作動詞の継続
have been waiting
現在完了進行形
詳しい説明を読む

完了進行形は have been + doing の形で,動作動詞の「継続」を表します。

継続を表すとき,状態動詞は完了形,動作動詞は完了進行形を使うのが基本です。

I have been waiting for you for two hours.(動作動詞)
私はあなたを2時間ずっと待っている。

It had been raining for three days when we arrived.
私たちが到着したとき,3日間雨が降り続いていた。

時・条件を表す副詞節の時制

時・条件を表す副詞節の中では,未来のことも現在形で表す
when / before / after / until / as soon as / if / unless など

I will call you when I get home.(× when I will get home)
家に着いたら電話します。

副詞節
when I get home
「いつ電話するか」を説明する → 現在形
名詞節
when he will come
know の目的語O → will を使う
詳しい説明を読む

時や条件を表す副詞節(when,before,after,until,as soon as,if,unless などで始まる節)の中では,未来のことでも will を使わず,現在形で表します。

If it rains tomorrow, we will stay home.(× If it will rain)
明日雨が降ったら,私たちは家にいます。

I will lend you the book when I have read it.
読み終わったら,その本を貸してあげます。

この規則が当てはまるのは副詞節だけです。同じ when や if でも,名詞節の場合は未来のことに will を使います。

I don't know when he will come.
彼がいつ来るのか,私は知らない。

I wonder if it will rain tomorrow.
明日雨が降るだろうか。

副詞節か名詞節かの見分け方

when 節や if 節を取り除いても文が成り立つなら副詞節,取り除くと文が成り立たない(目的語Oなどが欠ける)なら名詞節です。

I will call you [when I get home]. → I will call you. で文が成り立つので副詞節
I don't know [when he will come]. → I don't know. だけでは「何を」知らないのかが欠けるので名詞節

名詞節と副詞節については,「接続詞 Level 1」でも扱います。

時制を見たら確認しよう

基準点はいつか → 現在・過去・未来
基準点までのつながりはあるか → 完了形
副詞節か名詞節か → 副詞節なら未来でも現在形

基準点を意識して時制を選ぶ
I have lived here for ten years.
→ 基準点は現在:今までずっと住んでいる

I had lived here for ten years when I met her.
→ 基準点は過去:彼女に会った時点までずっと住んでいた

I will have lived here for ten years next spring.
→ 基準点は未来:来年の春の時点で10年住んでいることになる

-英文法・構文の要点
-, , , ,