モチタン辞典 › 読みもの › 英文法 › 現在完了「継続」の用法と例文

英語の継続文法をマスターする解説

英語の継続文法をマスターする解説

英語で「ずっと〜している」という継続を表す基本文法は、状態動詞を使うhave + 過去分詞(現在完了形)と、動作動詞を使うhave been + -ing(現在完了進行形)の2通りです。

日本語ではどちらも同じ「〜している」と表現するため混同されがちですが、動詞の種類と「動作の臨場感があるかどうか」に注目すると迷わず正確に使い分けられます。

英語の継続文法とは?まず全体像を整理

英語学習において「継続」という言葉を目にするとき、多くの場合は時制の文法項目である現在完了形の継続用法や現在完了進行形を指します。ただし、英文法では関係代名詞の非制限用法を「関係代名詞の継続用法」と呼ぶこともあります。

この記事では、時制として「過去のある時点から現在までずっと続いている状態や動作」を表す文法ルールについて詳しく解説します。

「〜している」を表す3つの時制の判定チャート

日本語の「〜している」という言葉を英語に直す際、現在進行形・現在完了形・現在完了進行形のどれを選ぶべきか迷う方が多く見られます。判断の基準は「期間があるかどうか」と「動詞の種類」です。

表は横にスクロールできます →

表現したい内容判断の基準使用する時制基本公式
今まさに起きている一時的動作過去とのつながりなし現在進行形am / is / are + -ing
過去から続く「状態」期間あり・状態動詞現在完了形[継続]have / has + 過去分詞
過去から続く「動作」期間あり・動作動詞現在完了進行形have / has been + -ing

たとえば「今、本を読んでいる」ならI am reading a book now.です。一方で「2時間前から本を読んでいる」のように過去の起点や期間が加わると、現在進行形ではなく完了時制が必要になります。

さらにreadは動作を表す動詞なので、I have been reading a book for two hours.とするのが自然です。

Nathan英語の文法は、話して身につけよう。会話アプリ「モチスピ」英語を話して練習できる会話アプリ。話すたびに、発音・文法・自然さをその場で直してもらえます。無料で試す

現在完了形[継続]の基本公式と文の作り方

現在完了形[継続用法]のコアイメージは、「過去に始まったある状態が、途切れることなく現在までずっと届いている」という点にあります。過去の事実だけを述べる過去形とは異なり、今この瞬間もその状態が維持されている点が特徴です。

肯定文の公式

肯定文の語順は主語 + have / has + 過去分詞です。主語が三人称単数(he, she, it など)のときはhasを用い、それ以外ではhaveを用います。

上記の例文のように、know(知っている)やbe(〜である)といった状態動詞と組み合わさることで、「過去から現在に至るまでの状態の継続」を示します。

否定文の公式

否定文はhaveやhasの直後にnotを置きます。短縮形としてhaven'tやhasn'tも頻繁に使われます。公式は主語 + have not / has not + 過去分詞です。

「〜していない状態が一定期間ずっと続いている」という意味になります。

疑問文の公式と期間を尋ねる表現

疑問文はHave / Has + 主語 + 過去分詞〜?の語順で作ります。返答はYes, I have.やNo, I haven't.のようにhave / hasを用いて答えます。

継続期間を具体的に質問したいときは、疑問詞How longを文頭に置きます。この構文は日常会話や試験で非常によく使われます。

現在完了形[継続]の文型
I+have known+Ken+for ten years

I have known Ken for ten years.私はケンを10年間知っています。

主語とhave/hasに過去分詞を組み合わせることで状態の継続を表します。

この記事に出てくる英単語(イラスト・音声つきの辞典ページへ)

疑問文や否定文のパターンを例文で確認したいときは、現在完了の疑問文・否定文の作り方の例文集を参考にしてください。

forとsinceの使い分けを完全整理

継続を表す英文では、「どれくらいの時間続いているのか」を示す語句がほぼ必須となります。その際に中心となるのが前置詞のforとsinceです。この2つの違いを明確に区別することが文法理解の重要なステップとなります。

「for + 期間」のルール

forは時間の長さ、すなわち「一定の幅・期間」を表す語句の前に置きます。「〜の間」と訳されます。

表現意味解説
for three days3日間日数の幅を示す
for two hours2時間時間の幅を示す
for five years5年間年数の幅を示す
for a long time長い間不特定の長い期間を示す
for a few minutes数分間短い時間の幅を示す

「since + 起点」のルール

sinceは過去の「特定の始まりの時点(起点)」を表す語句の前に置きます。「〜以来」「〜から(ずっと)」と訳されます。

表現意味解説
since yesterday昨日から過去の特定の日
since 20182018年から過去の特定の年
since last Sundayこの前の日曜日から特定の曜日
since this morning今朝から特定の時間帯

接続詞sinceのパターン(since + 主語 + 過去形)

sinceは前置詞として名詞を後ろに従えるだけでなく、接続詞として後ろに「主語 + 動詞の過去形」の節を取ることができます。この形もテストや日常会話で頻出します。

節の中の動詞が「過去の1点」を表すため、必ず過去形になる点に注意してください。

forとsinceの使い分け

for + 期間

  • 時間の長さ・一定の幅を表す
  • 訳:「〜の間」
  • 例:three days, two hours

since + 起点

  • 過去の特定の始まりの時点を表す
  • 訳:「〜以来」「〜から」
  • 例:yesterday, 2018

時間の幅を表す場合はfor、過去の起点を表す場合はsinceを使います。

具体的な文での使われ方をもっと見たい方は、forとsinceの使い分けの例文集も合わせて確認してみてください。

現在完了形と現在完了進行形の違いと使い分け

英語学習者が最もつまずきやすいのが、「現在完了形[継続]」と「現在完了進行形」の違いです。基本の判別ルールは「使われている動詞が状態動詞か動作動詞か」という点にあります。

状態動詞と動作動詞の区別

動詞には大きく分けて2つのグループがあります。

英文法の大原則として、状態動詞は原則として進行形(-ing)にできません。そのため、状態動詞で「ずっと〜している」と言いたい場合は、必ずhave + 過去分詞(現在完了形)を使います。

現在完了進行形(have been -ing)の役割

動作動詞を使って「過去から今まで動作が途切れず行われている」ことを表す場合は、現在完了進行形(主語 + have / has been + -ing)を用いるのが原則です。動作が今も進行中である臨場感や、活動の継続性を強く伝えるニュアンスを持ちます。

liveとworkの例外ルール

例外として、live(住む)やwork(働く)といった動詞は、状態的な意味と動作的な意味の両方を併せ持つため、現在完了形と現在完了進行形のどちらを使っても文法的に正しく、意味の違いもごくわずかです。

日常会話ではどちらを用いても自然に通じます。

動詞の種類と継続時制の使い分け
継続表現の動詞

状態動詞(進行形不可)

  • be
  • know
  • have
  • like
  • belong

動作動詞(現在完了進行形)

  • study
  • wait
  • run
  • play
  • read

例外(両方可能)

  • live
  • work

動詞が状態動詞か動作動詞かによって、使う時制の形式が決まります。

現在完了「継続」の用法と例文のイメージ

現在完了の3用法をテストで見分けるキーワード

中学校や高校の定期テスト、資格試験では、現在完了形の文が「継続・経験・完了(結果)」のどの用法かを判別させる問題がよく出題されます。一緒に使われている副詞や語句を確認することで、短時間で見分けることが可能です。

用法主な日本語訳目印となる代表的な語句
継続ずっと〜しているfor + 期間, since + 起点, How long
経験〜したことがあるbefore, ever, never, once, twice, many times
完了・結果(ちょうど)〜したところだ / もう〜してしまったalready, just, yet, recently

文中にfor three yearsやsince yesterdayがあれば「継続」、neverやbeforeがあれば「経験」、alreadyやjustがあれば「完了」と機械的に見分けることができます。ただし、キーワードが省略されている場合は、文脈と動詞の意味から判断する必要があります。

テスト対策として各用法の判別法を深掘りしたいときは、現在完了形の4用法の見分け方とキーワードが役立ちます。

次の疑問試験で迷いやすい判定ポイントを例文で復習したいときは、現在完了形3用法の見分け方をあわせて読むとすっきり整理できます。

自己紹介や会話で使える継続の実践フレーズ集

英会話や面接、自己紹介の場面で、自分の経歴や習慣を伝えるために継続の表現は欠かせません。そのまま使える定型文をカテゴリ別にご紹介します。

居住歴を伝えるフレーズ

学習歴・趣味の継続を伝えるフレーズ

社歴・職歴を伝えるフレーズ

場面別の継続フレーズ
🏠居住歴を伝える

I have lived in Osaka for about three years.

📚学習歴・趣味

I have been studying English for two years.

💼社歴・職歴

I have worked at this company since 2019.

居住歴・学習や趣味・職歴など、場面に応じた継続表現を活用できます。

理解度チェック!基礎演習問題と詳しい解説

学んだ知識が定着しているか、以下の練習問題で確認してみましょう。

第1問:空所補充(適する語を選んで補う)

(1)Mike has been absent from school ( for / since ) last Friday.
(2)We have known each other ( for / since ) more than ten years.
(3)( How long / When ) have you been playing the guitar?

第2問:動詞の適切な形(カッコ内の動詞を適する形に変える)

(1)She ( study ) French for three hours. Look, she is still at her desk.
(2)I ( have ) this smartphone since last year.

解答と解説

【第1問の解答】

【第2問の解答】

続けて読む

英文法の疑問をすべて見る「英語文法」のまとめ

理解度チェック

Q1. 過去から続く状態を表す際、状態動詞に用いる時制は?

  1. 現在進行形
  2. 過去形
  3. 現在完了形
  4. 現在完了進行形
答えを見る

正解: C. 現在完了形
状態動詞は原則として進行形にできないため、過去から続く状態には現在完了形を用います。

Q2. 「2時間前から本を読んでいる」を表す正しい英文はどれ?

  1. I am reading a book now.
  2. I read a book for two hours.
  3. I have been reading a book for two hours.
  4. I have been knowing him for a long time.
答えを見る

正解: C. I have been reading a book for two hours.
期間があり、readは動作動詞であるため現在完了進行形(have been -ing)を使います。

Q3. 継続表現における「for」と「since」の使い分けの規則は?

  1. forは起点、sinceは期間を表す
  2. forは期間、sinceは起点を表す
  3. どちらも動作動詞のときだけ用いる
  4. 文頭にはforしか置くことができない
答えを見る

正解: B. forは期間、sinceは起点を表す
forは一定の幅・期間を表す語句の前に、sinceは過去の始まりの時点(起点)の前に置きます。

よくある質問

Q. 現在進行形と現在完了進行形の違いは何ですか?
現在進行形は「今この瞬間の一時的な動作」を表し、時間の長さには言及しません。一方、現在完了進行形は「過去から今までずっと動作が続いている」という期間のつながりを明示します。
Q. Whenと現在完了形を一緒に使えないのはなぜですか?
Whenは「いつ」という過去の明確な1点を尋ねる言葉です。過去から現在までの時間の幅を前提とする現在完了形とは時間の捉え方が矛盾するため、When did you 〜? のように過去形を用います。
Q. have been toは継続用法で使えますか?
使えません。have been to 〜 は「〜へ行ったことがある(経験)」または「〜へ行ってきたところだ(完了)」を表します。継続で「ずっと〜にいる」と言いたいときは have been in 〜 を用います。
Q. since thenの意味と使い方は?
「それ以来(ずっと)」という意味の頻出表現です。過去の特定の出来事を then で受け、I have lived here since then.(それ以来ずっとここに住んでいます)のように文末などで使われます。
Q. ずっと好きだったは現在完了進行形にできますか?
できません。like(好む・好きである)は状態動詞であるため進行形にはできず、現在完了形を用いて I have liked this song for years. のように表します。

2026年9月25日更新・モチタン辞典編集部

関係する文法現在完了形の使い方現在完了進行形の使い方forとsinceの使い分け