この章で学ぶこと
- 現在完了進行形(have been -ing)=「ずっと〜し続けている」
- 過去完了(had + 過去分詞)=「過去のある時点までに〜していた」
- 現在完了・過去形との違いと使い分け
準2級プラスでは、3級・準2級で学んだ時制をより長い文・抽象的な内容の中で正確に使い分ける力が問われます。ここでは特につまずきやすい「完了」の時制を整理します。
現在完了進行形(have / has been + -ing)
「過去のある時点から今この瞬間まで、動作がずっと続いている」ことを表します。「ずっと〜している」という動作の継続がポイントです。
- I have been studying English for three hours. (私は3時間ずっと英語を勉強し続けている。)
- It has been raining since this morning. (今朝からずっと雨が降り続いている。)
現在完了(have + 過去分詞)が「経験・完了・結果・状態の継続」を表すのに対し、現在完了進行形は「動作が今も続いている」ことを強調します。
| 形 | 表すこと | 例 |
|---|
| 現在完了 | 経験・完了・結果 | I have read this book.(読み終えた) |
| 現在完了進行形 | 動作の継続 | I have been reading this book.(ずっと読んでいる) |
注意: know / like / have(持っている)のような状態を表す動詞は、ふつう進行形にしません。「ずっと知っている」は ✕ have been knowing ではなく ⭕ have known とします。
過去完了(had + 過去分詞)
「過去のある時点を基準にして、それより前に起きたこと(大過去)」を表します。「〜していた」「〜してしまっていた」と訳すことが多いです。
- When I arrived at the station, the train had already left. (私が駅に着いたとき、電車はすでに出てしまっていた。)
- She had never seen snow before she came to Japan. (日本に来る前、彼女は雪を見たことがなかった。)
ポイントは、2つの過去のできごとの「どちらが先か」をはっきりさせることです。先に起きたほう(古いほう)を過去完了、あとに起きたほうを過去形にします。
やってみよう: 「私が家に帰ったとき、母はもう夕食を作り終えていた」を英語にすると?
→ When I got home, my mother had already cooked dinner.(帰った=過去形、作り終えていた=過去完了)
過去完了進行形(had been + -ing)
過去のある時点まで、動作がずっと続いていたことを表します。
- I had been waiting for an hour when the bus finally came. (バスがやっと来たとき、私は1時間ずっと待っていた。)
ポイント: 完了形は「いつを基準にした話か」を意識すると整理できます。今が基準なら現在完了(進行形)、過去のある時点が基準ならその一つ前を過去完了。長文でも「時の前後」を見抜く力につながります。