モチタン辞典 › 読みもの › 英文法 › 日常英会話で使う現在完了形

英会話で使う現在完了形の基本と実践ルール
現在完了形は「過去の出来事を、今まさに目の前にある状況として相手に伝える」ための時制です。過去形が今と切り離された遠い出来事であるのに対し、現在完了形は矢印が現在の自分や相手に突き刺さっています。
この感覚さえ掴めば、日本語の「〜した」に惑わされず、会話の中で過去形と迷うことなく自然に使い分けることができます。
過去形との違いとコアイメージ
英会話で現在完了形を使いこなすための第一歩は、日本語の「〜した」という訳にとらわれないことです。日本語では「鍵をなくした」「映画を見た」「3年間住んだ」のいずれも同じ語尾になりますが、英語では過去形と現在完了形で相手に伝わる事実がまったく異なります。
「鍵をなくした」に見る話者の心理プロセスの違い
具体例として、鍵を紛失した場面を考えてみましょう。
過去形の I lost my key. で話者が意識しているのは「過去に鍵を紛失したという事実」そのものです。過去の出来事として完結しているため、その後どうなったかは語られていません。
新しくスペアキーを作ったかもしれないし、すでに発見して手元にある可能性もあります。そのため、聞き手は「それで、今はどうなったの?」と追加の質問をしたくなります。
一方、現在完了形の I have lost my key. で話者の頭にあるのは「なくした結果、今カバンやポケットに鍵がなくて家に入れない」という現在の困った状況です。過去の動作がそのまま現在につながっており、聞き手は「だから今困っているんだな、助けが必要だな」と瞬時に察することができます。
| 項目 | 過去形(past simple) | 現在完了形(present perfect) |
|---|---|---|
| 視点の位置 | 過去の一点(今は見ていない) | 現在(過去から現在までのつながり) |
| 現在の状態 | 不明(鍵が見つかった可能性あり) | 今も鍵がない(今まさに困っている) |
| 聞き手の受け止め方 | 「過去にそういう出来事があったんだな」 | 「今その影響が出ているんだな」 |
| 会話での目的 | 昔の事実や思い出の報告 | 現在の状況・感情・理由の説明 |
このように、現在完了形のコアイメージは「過去の出来事を現在に引きつけ、今の状態として差し出す感覚」です。いま目の前の会話相手に「今の自分」を説明したいときは、現在完了形を選択します。
英語の文法は、話して身につけよう。会話アプリ「モチスピ」英語を話して練習できる会話アプリ。話すたびに、発音・文法・自然さをその場で直してもらえます。無料で試す
基本構造と会話での音声変化
現在完了形の基本構造は have / has + 過去分詞 です。日常英会話ではフルスペルで発音されることは少なく、ほぼ確実に短縮形が使われます。聞き取りとスピーキングをスムーズにするために、基本文型と音のつながり(リンキング)を押さえましょう。
基本文型の整理
- 肯定文:主語 + have / has + 過去分詞
I have cleaned my room.(部屋を掃除しました) - 否定文:主語 + have not / has not + 過去分詞
I haven't finished my homework yet.(宿題はまだ終わっていません) - 疑問文:Have / Has + 主語 + 過去分詞 ?
Have you seen this movie?(この映画を見たことがありますか)
会話で必須となる短縮形と発音のルール
会話では have や has が極端に弱く発音され、前の主語と一体化します。文字として認識しようとすると聞き逃す原因になるため、音の塊として口に馴染ませておく必要があります。
表は横にスクロールできます →
| 表記 | 短縮形 | 発音の感覚 | 例文 |
|---|---|---|---|
| I have | I've | アイヴ | I've lived here for two years.(ここに2年住んでいます) |
| You have | You've | ユーヴ | You've done a great job.(素晴らしい仕事をしましたね) |
| He has | He's | ヒーズ | He's already left the office.(彼はもうオフィスを出ました) |
| They have | They've | デイヴ | They've known each other for long.(彼らは長い知り合いです) |
| have not | haven't | ハヴント(ヴとンを素早くつなぐ) | I haven't decided yet.(まだ決めていません) |
| has not | hasn't | ハズント(ズとンを素早くつなぐ) | She hasn't arrived yet.(彼女はまだ到着していません) |
特に He's や She's は is の短縮形と見た目も発音も同じになります。後ろに動詞の過去分詞(left や gone など)が続いているかどうかで瞬時に聞き分ける訓練を行いましょう。
I have cleaned my room.部屋を掃除しました
haveと過去分詞を組み合わせる3つの基本構造です
3大用法の公式と会話テンプレート
学校教育では「経験」「継続」「完了・結果」の3用法として分類されますが、会話では「どんな話題のときにどのキーワードとセットで使うか」というパターンで覚えるのが実用的です。
1. 経験用法:「これまでに〜したことがある」
生まれてから現在までの人生経験を話題にするときに使います。自己紹介や雑談(スモールトーク)で最も頻出する用法です。ever(疑問文で「今までに」)、never(「一度も〜ない」)、before(「以前に」)、once(「1回」)、twice(「2回」)などとセットで使われます。
- Have you ever been to Canada?(今までにカナダへ行ったことがありますか)
- I have never tried skydiving.(スカイダイビングは一度もしたことがありません)
- I've seen that musical twice.(そのミュージカルは2回見たことがあります)
2. 継続用法:「過去から今までずっと〜している」
過去のある時点から現在に至るまで、状態が途切れずに続いていることを示します。住んでいる場所、勤続年数、人間関係の長さを伝える際の定番です。期間を示す for(〜の間)と、過去の起点を示す since(〜以来)の使い分けが重要です。
- I've worked at this company for five years.(この会社で5年間働いています)
- She has lived in Kyoto since 2020.(彼女は2020年から京都に住んでいます)
- We've been friends since high school.(私たちは高校時代からの友人です)
| 前置詞 | 役割 | 後ろに続く言葉の例 |
|---|---|---|
| for | 時間の長さ・期間の合計 | three days(3日間)、ten years(10年間)、a long time(長い間) |
| since | 動作や状態が始まった起点 | yesterday(昨日)、last month(先月)、I was a child(子どもの頃) |
3. 完了・結果用法:「ちょうど〜したところ/もう〜してしまった」
直前に完了した行為の成果が、いま目の前に残っていることを示します。会話では just(ちょうど今)、already(すでに・もう)、yet(否定文で「まだ」、疑問文で「もう」)の位置がポイントです。just と already は have と過去分詞の間に挟み、yet は文末に置くのが基本です。
- I've just finished my lunch.(ちょうど昼食を食べ終わったところです)
- He has already sent the email.(彼はもうメールを送信しました)
- Have you had dinner yet?(もう夕食は食べましたか)
- I haven't received the package yet.(まだ荷物を受け取っていません)
具体的な文をもっと確認したいときは、現在完了形の使い方の例文集を参考にしてみてください。
現在完了形と一緒に使えないNG単語
現在完了形を使う上で最も気をつけたいのが、過去の一点を指す語句との併用です。現在完了形は「過去から現在までの広がり」を持つ時制であるため、過去のある一点に時間を固定してしまう語句とは構造上衝突してしまいます。
一緒に使えない代表的な語句
- yesterday(昨日)
- last night / last week / last year(昨夜/先週/去年)
- two hours ago / three days ago(2時間前/3日前)
- in 2018(2018年に)
- when I was a student(学生だったとき)
- just now(たった今:過去の一点を指す表現)
これらの語句を使って「いつ起きたか」を言いたいときは、現在完了形ではなく必ず過去形を使います。
| 誤った表現(NG) | 正しい表現(OK) | 日本語訳 |
|---|---|---|
| I have met him yesterday. | I met him yesterday. | 昨日彼に会いました。 |
| She has bought a car two days ago. | She bought a car two days ago. | 彼女は2日前に車を買いました。 |
| When have you arrived? | When did you arrive? | いつ到着したのですか? |
| I've seen her last week. | I saw her last week. | 先週彼女を見かけました。 |
特に疑問詞 When を使った質問は「いつという過去の一点」を尋ねる表現であるため、現在完了形とは組み合わせられません。When did you...? の形を使うのが原則です。
特定の日時・時期
- yesterday
- last night / week / year
- in 2018
時間差・特定時点
- two hours / three days ago
- when I was a student
- just now
過去の一点に時間を固定する語句は併用できません

次の疑問うっかり組み合わせてしまいがちな時間表現のルールは、現在完了形と一緒に使えない副詞で一覧を確認できます。
英会話完了形の使い分けと進行形
英会話完了形でステップアップする際に多くの人が悩むのが、現在完了形(have done)、現在完了進行形(have been doing)、そして過去完了形(had done)の使い分けです。会話のニュアンスに直結する切り替え基準を整理します。
現在完了形 vs 現在完了進行形
現在完了進行形(have / has been + -ing)は、「直前までその動作に没頭していた躍動感」や「一時的な動作の継続」を強調したいときに使います。
- I have read the book.(現在完了形:その本を読み終えた=読了という結果)
- I have been reading the book.(現在完了進行形:ずっとその本を読んでいる=まだ読書中・直前まで没頭していた)
- It has rained.(現在完了形:雨が降った=地面が濡れている状態)
- It has been raining.(現在完了進行形:ずっと雨が降り続いている=今も降っている、または直前まで土砂降りだった)
「疲れた顔をしている相手に理由を尋ねる」「待ち合わせで待たされた状況を伝える」といった臨場感のある場面では、進行形が非常によく使われます。
- I've been waiting for you for thirty minutes!(30分もずっと待っていたんだよ!)
- I'm tired because I've been working all day.(一日中ずっと働いていたから疲れたよ)
過去完了形(had + 過去分詞)が必要になる場面
過去完了形は、会話の基準となる過去の時点よりも「さらに前(大過去)」に起きた出来事を明確にしたいときに使います。過去の出来事を順序立てて語るスモールトークやトラブル報告で役立ちます。
- When I arrived at the station, the train had already left.(駅に着いたとき、電車はすでに出発してしまっていた)
- I lost the watch that my father had given to me.(父が私にくれた腕時計をなくしてしまった)
会話の起点が現在にある場合は現在完了形、起点がすでに過去の思い出話になっている場合は過去完了形と意識すると、頭の中の整理がスムーズになります。
現在完了形
- have + 過去分詞
- 読了などの結果を表す
- 雨が降って濡れた状態を示す
現在完了進行形
- have been + -ing
- まだ読書中など没頭感を強調
- 直前まで降り続く臨場感を示す
動作の結果を伝えるか臨場感を出すかで使い分けます
雑談で使える3往復会話スクリプト集
現在完了形の疑問文を投げかけられたとき、単に Yes, I have. や No, I haven't. だけで終わらせると会話が途切れてしまいます。質問に対する返答から過去形の詳細へスムーズに移行する、自然な3往復スクリプトを場面別で紹介します。
スクリプト1:旅行の経験を語る(経験用法)
旅行や訪れた場所の話題は、現在完了形で切り出してから過去形で詳細を深掘りするのが自然な流れです。
- A: Have you ever been to Hawaii?
(ハワイに行ったことはありますか?) - B: Yes, I've been there once. I went there for my summer vacation two years ago.
(はい、一度行ったことがあります。2年前の夏休みに訪れました) - A: That sounds nice! How did you like the local food?
(素敵ですね!現地の食事はどうでしたか?)
スクリプト2:仕事や居住期間を話す(継続用法)
相手のバックグラウンドを尋ねる How long have you 〜? は、スモールトークの定番表現です。
- A: How long have you lived in this city?
(この街にはどのくらい住んでいるのですか?) - B: I've lived here for about three years. I moved from Osaka for my job.
(3年ほど住んでいます。仕事の都合で大阪から引っ越してきました) - A: I see. Have you gotten used to living here now?
(そうなんですね。もうこちらの生活には慣れましたか?)
スクリプト3:日常のタスクや出来事を確認する(完了用法)
業務や日常生活での進捗確認では、yet と already が頻出します。
- A: Have you checked the latest report yet?
(最新のレポートはもう確認しましたか?) - B: Not yet, but I've just downloaded it. I'll read it right away.
(まだですが、ちょうど今ダウンロードしたところです。すぐに読みます) - A: Thanks! Please let me know if you have any questions.
(ありがとうございます!質問があれば教えてくださいね)
反射的に口から出すパターンプラクティス
会話中に頭の中で「主語が三人称単数だから has で、過去分詞は…」と考えていると、返答のタイミングを逃して沈黙が生まれます。現在完了形を無意識に繰り出すためのスピーキング自習手順を紹介します。
手順1:動詞の過去分詞をリズムで固定する
不規則変化動詞の過去分詞(seen, gone, eaten, known, done など)が瞬時に出ないと文が止まります。まずはよく使う動詞の原形・過去形・過去分詞をセットで声に出し、口の筋肉に記憶させます。
手順2:主語と have をワンセットにしたチャンク練習
主語と have を別々に考えず、塊(チャンク)として反射的に発音する練習を行います。
- I've already...(もう〜した)に動詞を足す:
I've already eaten. / I've already checked it. / I've already done that. - I haven't... yet.(まだ〜していない)に動詞を足す:
I haven't started yet. / I haven't seen it yet. / I haven't heard yet. - Have you ever...?(〜したことある?)に動詞を足す:
Have you ever eaten natto? / Have you ever been there? / Have you ever tried this?
手順3:現在完了から過去形への切り替えトレーニング
実際の会話では「現在完了で概要を答え、過去形で事実を付け足す」という2文構成が基本です。独学で練習する際は、以下の型に沿って声に出してみましょう。
- お題:映画を見たか尋ねられたとき
Yes, I've seen it. I watched it last night.(はい、見ました。昨日の夜に見ました) - お題:新しいカフェに行ったか尋ねられたとき
Yes, I've been there. I went there with my friend yesterday.(はい、行きました。昨日友達と一緒に行きました)
この型を毎日の音読に取り入れることで、時制の切り替えが頭ではなく口の反射でできるようになります。
原形・過去形・過去分詞をセットで発音する
主語とhaveを塊にして動詞を足す練習をする
現在完了で答えてから過去形で事実を付け足す
動詞の型からチャンク化、会話の切り替えへと進めます
過去形と現在完了を迷わず見分ける判断フロー
会話中に過去形(did)と現在完了形(have done)のどちらを使うか迷った際は、2つの思考ステップで瞬時に判断できます。
ステップ1:明確な過去の特定時点を表す言葉があるか
含まれている場合は無条件で過去形を用います。現在完了形は「今」を含んだ時制であるため、過去の一点のみを指す語句とは論理的に同居できません。
ステップ2:伝えたい主眼は「過去の事実」か「現在の状況」か
客観的な事実や思い出の報告なら過去形、「だから今こうなんだ」という現在の影響や心情を共有したいなら現在完了形を選びます。
| 判断の要素 | 過去形(did) | 現在完了形(have done) |
|---|---|---|
| 視点の位置 | 過去の特定の1点 | 過去から現在まで(今を含む) |
| 主たる関心 | 過去に何が起きたか | その結果、今どうであるか |
| 一緒に使える時を表す語句 | yesterday, last week, in 2020, ago, when ~ | already, yet, just, ever, never, for ~, since ~ |
| 会話でのニュアンス | 客観的な報告・物語の描写 | 近況の報告・現在の問題の共有・これまでの経験 |
たとえば昼食に誘われて断る際は「No thanks, I've already eaten.(お腹がいっぱいで今食べられない)」と現在完了形にし、「お昼は何を食べたの?」と過去の行為そのものを聞かれた際は「I ate pasta.」と過去形で答えます。
時点を尋ねるWhenのNGと一言で返せる応答フレーズ
現在完了形でやりがちな代表的ミスとして、時期を尋ねる疑問詞 When との併用があります。When は過去の特定時点を問う言葉であるため、現在完了形とは併用できません。
- ✕ 誤り:When have you arrived?
- ◯ 正解:When did you arrive?(いつ到着しましたか?)
時期を問うなら When did you...?、状況を問うなら Have you arrived yet?(もう着きましたか?)と切り替えます。
会話を止めないスムーズな短い応答フレーズ
相手から Have you...? と尋ねられた際、単に Yes. や No. だけで終わらせず、自然な短い返答を返すと会話のテンポが良くなります。
挨拶や雑談で頻出する現在完了進行形の定番表現
日常会話において、動作動詞を使って「(最近・さっきまで)ずっと〜している」と伝えたい場合、ネイティブスピーカーは現在完了進行形(have been + -ing)を好んで使います。カジュアルな挨拶や近況報告でそのまま使える頻出表現を押さえましょう。
- What have you been up to?(最近どうしてた? / 何か面白いことあった? ※友人同士の定番の挨拶)
- I've been working a lot lately.(最近ずっと仕事詰めなんだよね)
- I've been looking for you!(ずっとあなたを探していたんだよ!)
- How have you been doing?(元気に過ごしていましたか?)
- I've been waiting for over thirty minutes.(もう30分以上も待ち続けています)
なお、know や like、believe などの状態を表す動詞は進行形にできないため、継続を表す場合でも常に現在完了形(I've known him for years.)を用います。
続けて読む
理解度チェック
Q1. 鍵をなくした場面で現在完了形を使うとどう伝わりますか?
- 過去の事実のみを伝えており、今は不明
- すでに新しいスペアキーを作った状態
- 今も手元に鍵がなく困っている状況
- 昔の思い出として鍵を紛失したという報告
答えを見る
正解: C. 今も手元に鍵がなく困っている状況
現在完了形は「なくした結果、今も鍵がなくて困っている」という現在の状況を相手に伝えます。
Q2. 現在完了形と一緒に使える表現として正しい英文はどれですか?
- I have met him yesterday.
- I've seen that musical twice.
- She has bought a car two days ago.
- When have you arrived?
答えを見る
正解: B. I've seen that musical twice.
yesterdayなどの過去の一点を指す語句は使えませんが、経験を表すtwiceなどは併用できます。
Q3. 継続用法で起点を表すsinceの後ろに置く表現はどれですか?
- three days
- ten years
- a long time
- 2020
答えを見る
正解: D. 2020
forは期間の長さを表し、sinceは動作や状態が始まった起点(2020年など)を置きます。
よくある質問
- Q. Have been toとHave gone toの違いは?
- have been to は「〜に行ったことがある(戻っている)」という経験を表します。一方、have gone to は「〜へ行ってしまった(今ここにはいない)」という結果を表すため、話者本人である I を主語にして使うことは基本的にありません。
- Q. アメリカ英語では過去形で代用される?
- 口語のアメリカ英語では、already や just、yet と一緒に過去形を使うことがよくあります(例:Did you eat yet?)。ただし、公式な場面や現在との強いつながりを明確に示したいときは、現在完了形を使うのが一般的です。
- Q. How long have you lived...? の自然な答え方は?
- For about three years. のように期間だけを短く答えても自然です。完全な文で答えるなら I've lived here for three years. と表現します。since を使って Since 2021.(2021年からです)と始めるのも会話でよく使われます。
- Q. 英会話で完了形を話すとき沈黙しないコツは?
- I've... や Have you ever... の出だしの音をチャンクとして先に口に出してしまうことです。その直後に過去分詞を当てはめる練習を繰り返すと、文法を頭で組み立てるタイムラグをなくせます。
- Q. already は疑問文でも使えますか?
- 使えます。疑問文で already を使うと、「もう終わったの?(思ったより早いね)」という驚きのニュアンスが含まれます。通常の確認であれば Have you finished yet? のように yet を使うのが標準的です。
- Q. How long has it been? はどういう意味ですか?
- 「前回の出来事からどれくらい時間が経ちましたか?」を意味し、久しぶりに再会した相手に対して「最後に会ってからどれくらい経つっけ?(久しぶりだね)」という親近感を込めた挨拶として定番の表現です。
2026年10月8日更新・モチタン辞典編集部
have been to
ever
never
already
yet
since