完了形
現在完了進行形
have been + -ing
説明
現在完了進行形は、過去から現在まで続いている動作を強調します。
「ずっと待っています」「さっきから勉強し続けています」のように、過去から今まで続く動作を強調できます。動作がたった今終わっていても、その跡が現在に残っている場合には使えます。
形は have / has been + 動詞-ing。動作が続いていることを前に出します。
現在完了形は、経験・完了・結果のほか、状態や動作の継続も表せます。その中でも「動作が続いていること」を前に出すのが現在完了進行形です。
終わった過去と区別して、今まで続く動作やその跡を言えます。
今回のゴール
- 現在完了進行形で「ずっと〜し続けている」という動作の継続が言えるようになる
- 現在完了形と現在完了進行形の使い分けのルールを理解する
- 現在完了進行形の否定文で、ある期間にわたって動作が続いていないことが言えるようになる
- 現在完了進行形の疑問文で「ずっと〜しているか」と継続を尋ねられるようになる
- 現在完了進行形で、続いていた動作の結果や痕跡が今見える場面を表せるようになる
- 状態動詞はふつう進行形にしないというルールを理解する
今まで続く動作とその長さを伝える
現在完了進行形で「ずっと〜し続けている」という動作の継続が言えるようになる
現在完了進行形は「ずっと〜し続けている」という動作の継続を強調する表現です。現在完了形でも状態や継続を表せますが、現在完了進行形では動作そのものに焦点を置きます。基本は今も続いている動作に使います。動作が直前に終わっていても、汗や濡れた地面など、動作の跡が現在に見えていれば使えます。
主語が三人称単数なら has を使います。
現在まで続く動作とその長さを伝える
I have been studying English for two hours.
- 私は2時間ずっと英語を勉強しています。
She has been reading this book since yesterday.
- 彼女は昨日からこの本をずっと読んでいます。
Tom has been studying all day.
- トムは一日中勉強しています。
現在完了進行形は、for / since や all day のような時間表現と一緒に使うと、継続している長さや起点が伝わりやすくなります。
よくある間違い
He has been waited for an hour.
基本の形
He has been waiting for an hour.
現在完了進行形は have been + -ing で作ります。been の後ろは原形の go や過去分詞の waited ではなく、必ず -ing 形にします。
現在完了進行形ではどんな副詞を使いますか。
現在完了形との使い分け
現在完了形と現在完了進行形の使い分けのルールを理解する
have + 過去分詞で作る現在完了形は、結果・完了・状態の継続を前に出します。have been + -ing で作る現在完了進行形は、動作が今まで続いていることを前に出します。
動作動詞では両方使えますが、know / like などの状態動詞はふつう進行形にしません。have も「持っている」の意味では進行形にしにくく、have lunch のような動作の意味では進行形にできます。
結果や到達量に焦点を置くときは現在完了形、動作の継続に焦点を置くときは現在完了進行形を使います。
I have read three chapters. は「3章読んだ」という到達量を、I have been reading for two hours. は「2時間読み続けている」という継続を表します。
状態・完了量・続く動作に合わせて形を選ぶ
I have lived in Tokyo for 5 years.
- 私は東京に5年間住んでいます。
I have been living in Tokyo for 5 years.
- 私は東京に5年間ずっと住んでいます。
「ずっと住み続けてきた」という動作の継続に焦点を置いています。have lived と比べて、5年間続いてきた動きを強く伝えたいときに進行形を選びます。
live / work / study などは、現在完了形と現在完了進行形のどちらも使えます。文脈によっては、意味の差が小さいこともあります。
I have known him for 10 years.
- 私は彼を10年間知っています。
We have been having lunch for 30 minutes.
- 私たちは30分間昼食をとっています。
「I have lived in Tokyo for 5 years.」と「I have been living in Tokyo for 5 years.」の違いは何ですか。
現在完了進行形の否定文
現在完了進行形の否定文で、ある期間にわたって動作が続いていないことが言えるようになる
have / has not been + -ing で作る現在完了進行形の否定文は、ある期間にわたって動作が続いていないことを伝えます。I haven't been sleeping well lately. は「最近よく眠れていない」のように、完全に一度もしていないだけでなく、十分にできていない状態も表せます。
not を加えて続いていないことを表す
I haven't been sleeping well lately.
- 最近よく眠れていません。
現在完了進行形の否定形はどうなりますか。
現在完了進行形の疑問文
現在完了進行形の疑問文で「ずっと〜しているか」と継続を尋ねられるようになる
疑問形は「ずっと〜しているのですか?」と尋ねる形です。肯定文が「You have been waiting.」なら、疑問文は「Have you been waiting?」になります。
継続期間と動作の有無を尋ねる
- Q
How long have you been waiting?
- どのくらい待っていますか?
- A
For about 30 minutes.
- 30分くらいです。
- Q
Has he been studying all day?
- 彼は一日中勉強しているのですか?
- A
Yes, he has.
- はい、しています。
今まで彼がずっと何をしていたのかを、現在とのつながりを含めて尋ねると、英語はどうなりますか。
動作の結果が残る場面
現在完了進行形で、続いていた動作の結果や痕跡が今見える場面を表せるようになる
現在完了進行形は、継続していた動作の結果が今見えている場合にも使います。動作はすでに終わっていても、その跡が今残っていることを表せます。
現在に残る動作の痕跡を表す
I have been running.
- 走っていたので、汗をかいているんです。
He has been crying.
- 泣いていたので、目が赤いんです。
直前まで続いた動作の結果が今見えており、その動作を強調するときに使うのは何ですか。
状態動詞はふつう進行形にしない
状態動詞はふつう進行形にしないというルールを理解する
know, like や「持っている」を意味する have などの状態動詞は、動作ではなく状態を表すため、ふつう -ing の進行形にしません。「ずっと知っている」のように継続を表したい場合は、現在完了進行形ではなく have known という現在完了形を使います。
よくある間違い
I have been knowing him for 10 years.
基本の形
I have known him for 10 years.
know は「知っている」という状態を表す動詞なので、継続を表すときは現在完了進行形ではなく、have known という現在完了を使います。
have が「持っている」の意味のとき、進行形にできますか。
まとめ
- 現在完了進行形で「ずっと〜し続けている」という動作の継続が言えるようになる
- 現在完了形と現在完了進行形の使い分けのルールを理解する
- 現在完了進行形の否定文で、ある期間にわたって動作が続いていないことが言えるようになる
- 現在完了進行形の疑問文で「ずっと〜しているか」と継続を尋ねられるようになる
- 現在完了進行形で、続いていた動作の結果や痕跡が今見える場面を表せるようになる
- 状態動詞はふつう進行形にしないというルールを理解する