現在完了進行形の使い方|中学英語

現在完了進行形は have been + 動詞の ing 形で表し、「(過去から)ずっと〜し続けている」という意味を表します。現在完了形の継続用法をより強調した表現です。

基本の形

have/has been + 動詞の ing 形という形になります。

I have been studying English for two hours.
She has been waiting for you since noon.

「ずっと〜している」という動作の継続を表します。

現在完了形との違い

現在完了形(have + 過去分詞)でも継続を表せますが、現在完了進行形は動作が続いていることをより強調します。

現在完了形

I have lived here for ten years.
(10 年間ここに住んでいる)

現在完了進行形

I have been living here for ten years.
(10 年間ずっとここに住み続けている)

どちらも同じ状況を表せますが、現在完了進行形のほうが「今もまさに続いている」というニュアンスが強くなります。

例文で確認

I have been reading this book all day.
私は一日中ずっとこの本を読んでいる。
She has been working since this morning.
彼女は今朝からずっと働いている。
They have been playing tennis for two hours.
彼らは 2 時間ずっとテニスをしている。
It has been raining since yesterday.
昨日からずっと雨が降り続いている。

for(〜の間)や since(〜以来)といった時間を表す語句とよく一緒に使われます。

疑問文と否定文

疑問文は Have/Has を文頭に、否定文は have/has のあとに not を入れます。

Have you been waiting long?
長く待っていましたか?
How long have you been studying Japanese?
どのくらい日本語を勉強しているのですか?
I haven't been sleeping well lately.
最近よく眠れていない。

疑問文では How long …?(どのくらい)で始まる質問がよく使われます。

使い分けのポイント

現在完了進行形を使う場面

動作動詞(study, wait, work, run など)で「ずっと〜し続けている」と言いたいとき。動作の継続を強調したいとき。

現在完了形を使う場面

状態動詞(know, have, like など)で継続を表すとき。状態動詞は進行形にできないため。

I have known him for five years.
私は彼を 5 年間知っている。

know のような状態動詞は進行形にできないので、現在完了形を使います。

結果が見える状況

現在完了進行形は、動作の結果が今も見えるときによく使われます。

You look tired. Have you been running?
疲れているね。走っていたの?
Your eyes are red. Have you been crying?
目が赤いよ。泣いていたの?
The ground is wet. It has been raining.
地面が濡れている。雨が降っていたんだ。

今の状態(疲れている、目が赤い、地面が濡れている)の原因として、直前まで続いていた動作を表すことができます。

まとめ

have/has been + 動詞の ing 形

「ずっと〜し続けている」という継続を強調

動作動詞で使う(状態動詞は不可)

現在完了進行形は少し長い形ですが、「ずっと続いている」というニュアンスを出したいときにとても便利な表現です。