中3 英語 / 文法 / e3-02

更新 2026-09-12

現在完了進行形(have been + ing)

この単元でできるようになること

入試での位置づけ

現在完了進行形は 2021 年度から中学校で扱われるようになった文法で、公立入試でも「How long have you been 〜ing?」の会話空所補充(have been studying)として出題されます。現在完了(e3-01)の継続用法とセットで整理しておくと、どちらを使うか迷わなくなります。


1. 現在完了進行形とは

まずここだけ

have(has)been + 動詞の ing 形で「(過去のある時から今まで)ずっと〜し続けている」。

I have been studying English for two hours.(2 時間ずっと英語を勉強し続けている) It has been raining since this morning.(今朝からずっと雨が降り続いている) They have been playing soccer since three o’clock.

現在完了(have + (be + ing) を合体させた形。be の過去分詞 been が真ん中に来ます。

意味
have + beeningずっと〜し続けている(動作が今も続いている)

主語が三人称単数なら has been 〜ing


2. 現在完了(継続)との使い分け

まずここだけ

「ずっと〜している」を表すとき、動詞の種類で使う形が決まります。

動詞の種類使う形
状態を表す動詞(live、know、be、have、like、want …)現在完了 have + 過去分詞I have lived here for ten years. / I have known him since 2020.
動作を表す動詞(study、play、run、wait、rain、work、read …)現在完了進行形 have been + ingI have been studying for two hours. / It has been raining since morning.

状態の動詞は進行形にしない(× I am knowing、× I have been knowing)というルール(e1-07)が、ここでも同じ。

○ I have lived here for ten years.(状態) ○ I have been living here for ten years.(live は例外的にどちらも可) × I have been knowing him.(know は状態 → have known) ○ I have been waiting for an hour.(動作 → 進行形)

よくある間違い


3. for / since / How long

まずここだけ

現在完了と同じく、for(期間)・since(起点)を使います。

We have been waiting for the bus for thirty minutes. He has been working here since 2015. How long have you been studying English? — For five years. / Since I was ten.

否定文・疑問文

I haven’t been sleeping well recently.(最近よく眠れていない) Have you been waiting long? — Yes, I have. / No, I haven’t. Has it been raining since yesterday? — Yes, it has.


4. 現在進行形との違い

ここまでできれば十分

意味
現在進行形am/is/are + ing〜している(いつからかは言わない)
現在完了進行形have/has been + ingいつからずっと〜している(期間・起点を言う)

I am studying now.(今勉強中) I have been studying for three hours.(3 時間ずっと勉強中)

「for 〜」「since 〜」「How long」があるなら現在完了進行形。


5. 3 つの形の整理

ここまでできれば十分

使うとき
過去の一点(yesterday、ago、last 〜)
現在完了(継続)状態がずっと続く(live、know、be + for / since)
現在完了進行形動作がずっと続く(study、wait、rain + for / since)

I studied English yesterday.(昨日勉強した) I have known her for ten years.(10 年間知っている:状態) I have been studying English for two hours.(2 時間勉強し続けている:動作)


6. 自己チェック

  1. have / has + been + ing の 3 点がそろっているか
  2. 動作の動詞なら現在完了進行形、状態の動詞なら現在完了
  3. for(期間)・since(起点)の使い分け
  4. How long 〜? には For 〜. / Since 〜. で答える

7. 小テストへ

→ 小テスト(e3-02

関連する単元

参考資料

このページの小テスト ── 間違えても、同じ型の別の問題でやり直せます。レベルを選んでそのまま始められます。
基礎から標準から発展から

英語の単元一覧まぜこぜテスト英語の勉強法