モチタン辞典 › 読みもの › 英文法 › 現在完了形と現在形・進行形の違い

現在完了形と現在形の違いと使い分け
現在形と現在完了形の最大の違いは、意識が向いている時間の「形」です。現在形は「普段の習慣や変わらない事実(現在の1点・面)」を表すのに対し、現在完了形は「過去から現在までつながる時間の幅(線)」を表します。
日本語ではどちらも「〜している」と訳せる場合でも、過去の出来事が今に影響しているかどうかが英語の明確な分岐点です。
現在形と現在完了形の基本比較
現在形と現在完了形の使い分けに迷うときは、まずそれぞれの文が指し示している時間軸の範囲を確認しましょう。英語の時制は日本語の直訳ではなく、「どの時間の枠組みで物事を捉えているか」によって厳密に区別されます。
| 項目 | 現在形 | 現在完了形 |
|---|---|---|
| 基本形 | 動詞の原形 / 三人称単数現在形(-s / -es) | have / has + 過去分詞 |
| 捉える時間 | 現在を中心とした日常、習慣、不変の事実 | 過去のある時点から現在までの時間的な幅(線) |
| 視点の位置 | 「今どうなのか」「普段どうなのか」 | 「過去の出来事が現在どうつながっているか」 |
| 代表的な例文 | I live in Tokyo. (私は東京に住んでいます) | I have lived in Tokyo for three years. (私は東京に3年間住んでいます) |
| ニュアンス | 現在の居住地という客観的な事実 | 3年前に住み始め、今も住み続けている期間の継続 |
| よく使う語句 | always, usually, every day など | for, since, already, yet など |
上の表の通り、同じ「住んでいる」という日本語でも、単に住んでいる事実を伝えるときは現在形の I live in Tokyo. を使います。一方、「3年間ずっと」という時間の長さや過去の起点を意識して伝えるときは、現在完了形の I have lived in Tokyo for three years. を選びます。
英語の文法は、話して身につけよう。会話アプリ「モチスピ」英語を話して練習できる会話アプリ。話すたびに、発音・文法・自然さをその場で直してもらえます。無料で試す
時間のイメージとタイムライン図解
時制を正しく使い分けるためには、ネイティブスピーカーが持っている時間感覚をタイムライン(時間軸)で把握することが近道です。
過去形・現在形・現在完了形のタイムライン
英語の時制を直線上に並べると、以下のような視点の違いが存在します。
- 過去形:【過去の1点】過去に起きて、すでに完了・終了したこと。現在の状況とは切り離されています。
- 現在形:【現在の状態・広く平らな時間】昨日も今日も明日も当てはまる習慣、一般的な真理、現在の安定した状態を表します。
- 現在完了形:【過去から現在へ伸びる矢印(線)】過去の出来事が現在まで届いている状態を表します。
たとえば、鍵を失くした状況を考えてみましょう。
過去形の I lost my key.(私は鍵を失くしました)は、過去の行為そのものを述べているだけです。その結果、今も見つかっていないのか、それともすでに見つかったのかは文の中に含まれていません。
一方、現在完了形の I have lost my key.(私は鍵を失くしてしまいました)は、過去に失くした状態が現在までつながっています。つまり、「過去に鍵を失くし、その結果として今も手元に鍵がない」という現在の困った状況を強く伝えています。
過去形・現在形・現在完了形が指し示す時間の位置と広がりを確認できます。
過去の事実と今のつながりをより詳しく知りたいときは、現在完了・過去形の違いも参考になります。
次の疑問時間軸の捉え方に慣れてきたら、現在・過去・未来の完了時制の全体像も合わせて整理しておくと理解が深まります。
現在形と現在完了形の対比例文
具体的な文脈で両者を比較してみましょう。主語や動詞が同じでも、時制が変わると伝えたい核心が変わります。
1. 居住や所属を表す動詞
現在形:
Ken works at an IT company.
(ケンはIT企業で働いています。)
→ ケンの現在の職業・勤務先という事実を述べています。
現在完了形:
Ken has worked at an IT company for five years.
(ケンはそのIT企業で5年間働いています。)
→ 5年前に働き始め、現在まで継続して働いている期間に焦点を当てています。
2. 状態・知識を表す動詞
現在形:
I know Ms. Green.
(私はグリーンさんを知っています/面識があります。)
→ 現時点で知り合いであるという事実を表します。
現在完了形:
I have known Ms. Green since I was a child.
(私は子どもの頃からグリーンさんを知っています。)
→ 過去のある時点から現在まで知人関係が続いていることを表します。
3. 性質や習慣を表す動詞
現在形:
My brother plays tennis every Sunday.
(私の兄は毎週日曜日にテニスをします。)
→ 普段繰り返している習慣的な動作を表します。
現在完了形:
My brother has played tennis since he was ten.
(私の兄は10歳のときからずっとテニスを続けています。)
→ テニスを始めた10歳から現在に至るまでの経験・継続を表します。
現在形(現在の事実・習慣)
- Ken works...(ケンの現在の勤務先の事実)
- I know...(現時点で知り合いである事実)
- My brother plays...(普段の習慣的な動作)
現在完了形(継続・経験)
- Ken has worked...(5年間継続して働いている期間)
- I have known...(過去から現在まで続く関係)
- My brother has played...(10歳からの経験・継続)
同じ動詞でも、現在形と現在完了形で伝わる核心の違いを比較できます。
さまざまな場面での表現をもっと確認したいときは、現在完了形の使い方の例文集をご覧ください。
現在完了形と現在進行形の違い
現在完了形と並んで学習者が混同しやすいのが「現在進行形」です。どちらも「今行われていること」に関わりますが、捉えている時間の幅が異なります。
形式と働きの違い
表は横にスクロールできます →
| 項目 | 現在進行形 | 現在完了形 | 現在完了進行形 |
|---|---|---|---|
| 形式 | am / is / are + -ing | have / has + 過去分詞 | have / has been + -ing |
| 焦点 | 「今まさにその瞬間」に行われている動作 | 「過去から現在まで」の継続・経験・完了結果 | 「過去から現在まで」動作が休まず続いていること |
| 時間の視点 | 今この瞬間(一時的な動作) | 過去から現在までの幅(線) | 過去から現在までの幅+躍動感 |
| 例文 | It is raining now. (今、雨が降っています) | It has rained a lot this week. (今週は雨がたくさん降りました) | It has been raining for two hours. (2時間雨が降り続いています) |
「今まさに」か「過去から今まで」か
現在進行形の He is reading a book.(彼は本を読んでいます)は、話し手が発話している「今まさに」本を開いて読んでいる途中であることを意味します。昨日から読んでいるのか、いつ読み終わるのかは問いません。
これに対し、現在完了進行形の He has been reading that book for three hours.(彼はその本を3時間ずっと読み続けています)は、3時間前という過去に読み始め、休まずに今も読み続けている継続の長さを表します。
また、状態を表す動詞(例: know, like, belong)は、原則として進行形にできません。そのため、「〜の間ずっと知っている」のような継続を表すときは、進行形ではなく現在完了形(have known など)を用います。

動詞の種類と時制の使い分け法則
英語の動詞は大きく「状態動詞」と「動作動詞」に分かれます。この区別を理解すると、現在形・現在進行形・現在完了形の選択で失敗しなくなります。
状態動詞と動作動詞の分類
- 状態動詞:自分の意志で瞬時に開始・中断できない動詞。頭の中の状態、感情、所有、知覚など。
例: know(知っている), like(好む), have(持っている), belong(所属している), resemble(似ている) - 動作動詞:自分の意志ですぐに始めたり止めたりできる具体的な動作。
例: run(走る), write(書く), study(勉強する), eat(食べる), play(遊ぶ)
時制の組み合わせルール
表は横にスクロールできます →
| 動詞の区分 | 現在形にした場合 | 進行形(-ing)の可否 | 過去から現在の「継続」を表す場合 |
|---|---|---|---|
| 状態動詞 | 現在の状態を表す(例: I know him.) | 原則不可(× I am knowing him.) | 現在完了形を使用(例: I have known him for years.) |
| 動作動詞 | 普段の習慣・反復を表す(例: I study English.) | 可能(例: I am studying English now.) | 現在完了進行形を使用(例: I have been studying English for two hours.) |
live や work などの例外パターン
動詞の live(住む)や work(働く)は、状態と動作の中間に位置する動詞です。そのため、期間を表す語句を伴う場合、現在完了形と現在完了進行形のどちらを使っても意味の差はほとんどありません。
- I have lived here for ten years.(ここに10年住んでいます)
- I have been living here for ten years.(ここに10年住み続けています)
どちらも自然に使われます。強いて言えば、進行形を使った方が「一時的な滞在」や「活動の生き生きとした感覚」がわずかに強調されます。
状態動詞
- 意志で瞬時に開始・中断不可
- know, like, haveなど
- 原則進行形は不可
- 継続は現在完了形を使う
動作動詞
- 意志ですぐ開始・中断可能
- run, write, studyなど
- 進行形にできる
- 継続は現在完了進行形を使う
動詞の性質によって進行形や継続表現の作られ方が分かれます。
次の疑問動詞の性質による使い分けをさらに掘り下げたいときは、状態動詞と動作動詞で変わる現在完了形のルールを確認してみましょう。
日本語の「している」脱出マトリクス
日本語の「〜している」という言葉は、現在の状態、動作の進行、過去の習慣、継続など、多様な意味を1つの形で引き受けています。これが英語の時制選択で迷う最大の原因です。言いたいニュアンスに合わせて英語の時制を逆引きできるように整理しました。
表は横にスクロールできます →
| 言いたいことの例 | 表したいニュアンス | 選ぶべき英語の時制 | 正しい英文例 |
|---|---|---|---|
| 私は車を持っています。 | 現在の所有状態 | 現在形 | I have a car. |
| 彼は今、走っています。 | 現時点で行われている動作 | 現在進行形 | He is running right now. |
| 彼は毎朝走っています。 | 日常的な習慣・日課 | 現在形 | He runs every morning. |
| 3年間英語を勉強しています。 | 過去から続く動作の継続 | 現在完了進行形 | I have been studying English for three years. |
| 彼とは10年前から知り合いです。 | 過去から続く状態の継続 | 現在完了形 | I have known him for ten years. |
| 宿題はもう終わっています。 | 過去の動作が完了した結果 | 現在完了形 | I have already finished my homework. |
日本語で「〜している」と口にしそうになったら、「それは普段の習慣なのか」「今の一瞬の動作なのか」「過去から続いている時間の幅なのか」をワンクッション挟んで考えることが大切です。
一目で選べる時制判別フローチャート
英文を書くときやテスト問題を解くときに、どの時制を選べばよいかを判定するための判断基準を順序立てて解説します。
ステップ1:明確な過去の1点を示す語があるか?
文中に yesterday, two days ago, last night, in 2020, when I was a child など、過去の特定の1点を指す言葉がある場合は、現在完了形を使えません。迷わず「過去形」を選びます。
ステップ2:過去から現在までの時間の幅(継続・経験)があるか?
文中に for three years, since yesterday, before, already, yet などがある、あるいは「過去の出来事が今に影響している」状況であれば、「現在完了形(または現在完了進行形)」を選びます。
- 状態動詞なら → have / has + 過去分詞
- 動作動詞の継続なら → have / has been + -ing
ステップ3:今この瞬間の動作か、普段の習慣か?
時間の幅がなく、現在の話である場合:
- 「今まさに〜しているところ」なら → 現在進行形(be + -ing)
- 「いつも〜する」「普段は〜だ」「変わらない事実」なら → 現在形
時制の目印キーワード一覧
| 時制 | 代表的なキーワード |
|---|---|
| 現在形 | always, usually, often, sometimes, every day, on Sundays |
| 現在進行形 | now, right now, at the moment, currently |
| 現在完了形 | for + 期間, since + 起点, already, yet, just, ever, never, so far |
| 過去形(併用不可) | yesterday, ago, last 〜, then, when S + 過去形, just now |
yesterdayなど明確な過去の語があれば過去形
forやsinceなど現在への影響・幅があれば現在完了
今まさに進行中なら進行形、普段の習慣なら現在形
文中のキーワードや時間の幅を手がかりに、適切な時制を順に判定します。
ビジネスや日常のシーン別使い分け
実際の会話やビジネスメールでそのまま使える実用的なフレーズを、状況別に対比して紹介します。
1. 進捗報告・業務連絡
業務メールで「報告書を送りました」「確認しました」と伝えるとき、時制の使い分けが相手への配慮につながります。
- I sent the report yesterday.(昨日報告書を送りました。)
→ 過去の送信行為の報告。送った日時に焦点を当てています。 - I have just sent the report.(たった今、報告書をお送りしました。)
→ 今まさに送信が完了し、相手の受信箱に届いたことを知らせるニュアンスです。 - I have not received the file yet.(ファイルがまだ届いておりません。)
→ 過去から現時点までの未着状態を伝える定番の表現です。
2. 自己紹介・経歴の説明
面接やネットワーキングで自分の経験を話す際の使い分けです。
- I work in marketing.(私はマーケティング部門で働いています。)
→ 現在の職種・担当業務をシンプルに伝える表現です。 - I have worked in marketing for eight years.(私は8年間マーケティングの仕事をしています。)
→ 業界におけるキャリアの長さ・継続年数を強調できます。 - I worked at a bank before.(以前は銀行で働いていました。)
→ 過去形なので、現在はすでに銀行を辞めていることが明確に伝わります。
3. トラブル・体調の連絡
遅刻や欠席の連絡におけるニュアンスの違いです。
- The train is delayed.(電車が遅れています。)
→ 現在の運行ダイヤが乱れている事実を伝えています。 - My train has stopped due to an accident.(事故のため電車が止まってしまいました。)
→ 運転見合わせが発生し、その結果今も足止めされている切迫感が伝わります。 - I have caught a cold, so I cannot attend the meeting.(風邪を引いてしまったため、会議に出席できません。)
→ 風邪を引いた状態が今も治っておらず、出席できない理由になっていることを示します。
理解度チェック小テストと解説
学んだ知識が定着しているか、以下の練習問題で確認してみましょう。文脈に適した動詞の形を考えてみてください。
問題
- Ken ( live / lives / has lived ) in Kyoto for five years now.
- Listen! Someone ( knocks / is knocking / has knocked ) on the door.
- I ( visit / visited / have visited ) Canada two years ago.
- Ms. White is not here. She ( goes / is going / has gone ) to the post office.
- My father ( drives / is driving / has driven ) to work every day.
解答と解説
1. 正解: has lived
解説: for five years(5年間)という期間の表現があり、過去から現在まで住み続けている「継続」を表しているため、現在完了形の has lived が適切です。
2. 正解: is knocking
解説: 文頭の Listen!(聞いて!)から、今まさにドアを叩いている最中であることがわかります。現時点の動作なので現在進行形の is knocking が正解です。
3. 正解: visited
解説: two years ago(2年前)は明確な過去の1点を表す語句です。現在完了形とは一緒に使えないルールがあるため、過去形の visited を選びます。
4. 正解: has gone
解説: 「ホワイトさんは今ここにいない」という現在の事実があります。郵便局へ行ってしまい、その結果今ここにはいないという「完了・結果」を表すため、現在完了形の has gone が適切です。
5. 正解: drives
解説: every day(毎日)というキーワードがあり、父親の日常的な習慣を表しています。普遍的な習慣や規則的な動作には現在形の drives を用います。
次の疑問基本ルールを確認したあとにさらに演習を重ねたいなら、現在完了形の問題プリントと解説で腕試しができます。
時制を見極める共起キーワード一覧
文法問題や英文読解では、文中に含まれる副詞や前置詞を手がかりに時制を特定できます。時制ごとの代表的な共起語を把握しておきましょう。
| 時制 | 一緒に使われやすい代表的な語句 | 例文 |
|---|---|---|
| 現在形 | always, usually, often, sometimes, everyday, once a week | He usually walks to work.(彼は普段徒歩で通勤している。) |
| 現在完了形 | since, for, already, yet, just, ever, never, so far | She has already finished her homework.(彼女はもう宿題を終えた。) |
| 現在進行形 | now, right now, at present, at the moment, look! | Look! The baby is smiling.(見て!赤ちゃんが笑っているよ。) |
| 過去形 | yesterday, ago, last 〜, in + 年号, when 〜(過去の一時点) | They bought the house three years ago.(彼らは3年前にその家を買った。) |
特に since(〜以来)と ago(〜前)は混同しやすいため注意が必要です。since は過去の起点から現在までを含むため現在完了形と結びつき、ago は過去の一時点を指すため過去形と結びつきます。
続けて読む
理解度チェック
Q1. 現在完了形の特徴として本文で説明されているものは?
- 過去の1点で起きてすでに終了したことを表す
- 今まさにその瞬間に行われている一時的な動作を表す
- 昨日も今日も明日も当てはまる普遍的な習慣を表す
- 過去のある時点から現在までの時間的な幅を表す
答えを見る
正解: D. 過去のある時点から現在までの時間的な幅を表す
現在完了形は過去のある時点から現在までの時間的な幅(線)を捉える時制です。
Q2. 状態動詞 know で過去から現在の継続を表す文はどれ?
答えを見る
正解: B. I have known him for years.
状態動詞は原則として進行形にできないため、継続には現在完了形を用います。
Q3. 現在完了形と一緒に使えない語句として挙げられているものは?
- two days ago
- since yesterday
- already
- for three years
答えを見る
正解: A. two days ago
過去の特定の1点を指す two days ago などは現在完了形と併用できません。
よくある質問
- Q. I know him. と I have known him. のニュアンスの違いは?
- I know him. は「彼と知り合いです」という現在の事実を表します。一方、I have known him. は後ろに for five years などの期間を伴い、「彼とは5年前から知り合いです」という過去から現在までの付き合いの長さを表します。
- Q. 現在完了形を過去形と一緒に使えないのはなぜ?
- 現在完了形は「過去から現在までつながる線」を意識する時制です。そのため、yesterday や three days ago のような「過去の特定の1点」を切り取る言葉と組み合わせると、現在とのつながりが断ち切られてしまい矛盾が生じるためです。
- Q. 「〜したことがある」という経験も現在完了形ですか?
- はい、過去の出来事であっても「現在までにその経験を自分の人生の中に持っている」という感覚で捉えるため、現在完了形の経験用法(have + 過去分詞)を使います。ever や never、twice などとよく併用されます。
- Q. how long の疑問文ではどの時制を使いますか?
- 期間の長さを尋ねる How long 〜? は、過去から現在までの時間の幅を尋ねることが多いため、現在完了形(または現在完了進行形)と非常に相性が良いです。例: How long have you lived here?(ここにどのくらい住んでいますか?)
- Q. already と yet はどの時制で使うべきですか?
- 「もう〜した」「まだ〜していない」を表す already や yet は、過去の動作が現在の状況にどう結びついているかを示すため、主に現在完了形で使われます。アメリカ英語の口語では過去形で使われることもありますが、標準的には現在完了形が原則です。
- Q. just now は現在完了形で使えますか?
- just now(たった今)は「過去の一時点」を表す表現とみなされるため、原則として過去形と一緒に使います(例:He arrived just now.)。単独の just(ちょうど〜したところ)であれば現在完了形と共起します(例:He has just arrived.)。
- Q. live は現在形と現在完了形のどちらが無難?
- 自己紹介で単純に「〜に住んでいます」と拠点を伝えるなら現在形(I live in 〜)で十分です。「何年間住んでいる」と居住期間を付け加えたいときは必ず現在完了形(I have lived in 〜 for ...)を使ってください。
2026年9月26日更新・モチタン辞典編集部
since
for
already
yet