モチタン辞典 › 読みもの › 英文法 › 完了形と過去分詞の用法

過去分詞と完了形の仕組み・時制と訳し方まとめ
完了形とはhave(またはhas、had)という助動詞のうしろに過去分詞を置くことで、「ある基準点まで動作や状態が続いていることやつながっていること」を表す文法構造です。
過去分詞そのものは単なる動詞の活用形の一つにすぎませんが、助動詞と結びつくことで現在完了・過去完了・完了受動態といった多様な時制と意味を生み出します。
過去分詞と完了形の全パターン対訳チートシート
英語の完了形は、先頭に置く助動詞の種類(have、has、had、法助動詞)や、受動態を表すbeenの有無によって形と訳し方が変わります。まずは主要な7つの組み合わせを一覧で確認しましょう。
表は横にスクロールできます →
| 形 | 文法名称 | 主な意味と訳し方 | 代表例文 |
|---|---|---|---|
| have / has + 過去分詞 | 現在完了形 | (今までに)〜したことがある、〜してしまった、ずっと〜している | I have lost my key.(私は鍵をなくしてしまった) |
| had + 過去分詞 | 過去完了形(大過去) | (過去のある時点までに)〜していた、〜したことがあった、〜した | The train had left when I arrived.(私が着いた時、列車はすでに出発していた) |
| have / has had | 現在完了形(本動詞have) | ずっと持っている、経験した、食べた | She has had a cold since Monday.(彼女は月曜日からずっと風邪をひいている) |
| had had | 過去完了形(本動詞have) | (過去のその時まで)持っていた、経験していた | We had had no trouble until yesterday.(昨日までは何の問題も起きていなかった) |
| have / has been + 過去分詞 | 現在完了受動態 | (今までに)〜された、ずっと〜されている | The room has been cleaned.(その部屋は掃除されている) |
| had been + 過去分詞 | 過去完了受動態 | (過去のある時点までに)〜されていた | The gate had been closed.(門はその時すでに閉ざされていた) |
| could have + 過去分詞 | 助動詞+完了形 | 〜できたのに(実際はしなかった)、〜だったかもしれない | You could have called me.(電話をくれたらよかったのに) |
英語学習において最も大切なのは、「haveなどの助動詞が時間の基準点を決め、後ろの過去分詞が動作の内容を担っている」という分担を意識することです。
英語の文法は、話して身につけよう。会話アプリ「モチスピ」英語を話して練習できる会話アプリ。話すたびに、発音・文法・自然さをその場で直してもらえます。無料で試す
have 過去分詞の訳し方とhave has違い
現在完了形は「主語 + have [has] + 過去分詞」で作ります。主語によってhaveとhasのどちらを選ぶかが決まり、文脈や一緒に使われる語句によって3つの用法のいずれかで訳します。
主語による have と has の使い分け
使い分けの基準は、現在形の一般動詞に-sを付けるルール(三人称単数現在)と同じです。
例文で主語と助動詞の一致を確認しましょう。
They have finished their homework.
(彼らは宿題を終えました。)
Ken has finished his homework.
(ケンは宿題を終えました。)
現在完了形の3つの用法と訳し方
現在完了形は、過去の出来事が「現在」にどう関わっているかを述べる表現です。日本語の文脈に合わせて主に以下の3通りに訳し分けます。
1. 完了・結果用法(〜してしまった/〜したところだ)
動作がちょうど完了したことや、その結果として現在の状態が生じていることを表します。
I have just eaten lunch.
(私はちょうど昼食を食べたところです。
)
He has gone to America.
(彼はアメリカへ行ってしまった=今ここにはいない。)
2. 経験用法(〜したことがある)
過去から現在までの間に、その経験を持ったことがあるかどうかを表します。ever(今までに)、never(一度も〜ない)、before(以前に)、twice(2回)などの語句とよく一緒に使われます。
Have you ever seen a whale?
(あなたは今までにクジラを見たことがありますか。)
I have visited Kyoto twice.
(私は京都を2回訪れたことがあります。)
3. 継続用法(ずっと〜している)
過去に始まった状態が、現在までずっと続いていることを表します。期間を表すfor three years(3年間)や、起点を表すsince yesterday(昨日から)を伴うのが典型的です。
We have known each other for ten years.
(私たちは10年来の知り合いです。)
She has lived in Tokyo since 2020.
(彼女は2020年から東京に住んでいます。)
完了・結果
- 〜してしまった
- 〜したところだ
経験
- 〜したことがある
- ever / never
継続
- ずっと〜している
文脈や一緒に使われる語句に合わせて3つの用法に訳し分けます。
用法の判別や練習には、現在完了形の使い方の例文集を参考にしてみてください。
次の疑問基本の用法だけでなく例文やニュアンスまで深掘りしたいときは、have+過去分詞の総まとめで詳しく確認できます。
過去完了と大過去:had 過去分詞の訳し方
過去完了形は「主語 + had + 過去分詞」の形をとります。主語が何であっても、助動詞は常にhadを用います。現在完了形が「現在」を基準にするのに対し、過去完了形は「過去のある時点」を基準にして、それ以前の動作や状態を振り返る文法です。
過去完了形の基本的な訳し方
過去完了形も現在完了形と同様に、「完了」「経験」「継続」の3つの意味を持ちます。ただし、基準となる時間が過去に移るため、語尾は「〜していた」「〜したことがあった」のようになります。
When I reached the station, the train had already started.
(私が駅に着いた時、列車はすでに出発していた[完了]。)
I had never spoken to a foreigner before I entered college.
(大学に入る前は、一度も外国人と話したことがなかった[経験]。)
She had been ill for a week when the doctor came.
(医師が来た時、彼女は1週間ずっと病気で寝込んでいた[継続]。)
大過去を表す過去完了形
過去完了形には、上記の3用法に加えて「大過去(だいかこ)」と呼ばれる重要な役割があります。大過去とは、「過去に起きた2つの出来事のうち、どちらが先に起きたのか」を明確にする用法です。
過去形の文の中で、それよりもさらに過去に起きた出来事を表す場合にhad + 過去分詞を使います。
I lost the watch which my uncle had bought for me.
(私は叔父が買ってくれた時計をなくしてしまった。)
この文では、「時計をなくした(lost)」という過去の出来事よりも前に、「叔父が買ってくれた(had bought)」という出来事が起きています。このように前後の時間差をはっきりと示すために過去完了形が使われます。
過去の出来事よりもさらに前に起きたことを大過去で表します。
過去分詞 have had の違いと仕組み
英語の長文読解や文法問題で頻出するのが、have had や had had のように have 系列の単語が2つ重なる形です。一見すると奇妙に見えますが、構造を品詞レベルで分解すると明確に理解できます。
have had の構造分解
have had は、「完了形を作るための助動詞 have」のうしろに、「一般動詞 have(持っている、食べる、経験するなど)の過去分詞形である had」が結合した形です。
| 構成要素 | 品詞・役割 | 意味 |
|---|---|---|
| 1語目の have / has | 助動詞(完了形を形成) | (現在までのつながりを示す目印) |
| 2語目の had | 一般動詞の過去分詞 | 持つ、経験する、食べる、過ごす |
例文を通して構造を確認してみましょう。
I have a headache.
(現在形:私は頭が痛い。)
I have had a headache since this morning.
(現在完了形:今朝からずっと頭が痛い。)
主語が三人称単数であれば、助動詞部分が has に変わり has had となります。
He has had this smartphone for three years.
(彼はこのスマートフォンを3年間使っている/持っている。)
had had との違い
had had は、過去完了形の助動詞 had に一般動詞の過去分詞 had が続いたものです。基準となる過去の時点まで、「持っていた」「過ごしていた」という意味を表します。
They had had dinner before they went to the theater.
(劇場へ行く前に、彼らはすでに夕食を済ませていた。)
「劇場へ行った(went)」という過去の時点より前に「夕食を食べる(have dinner)」という動作が完了していたため、大過去として had had が使われています。

過去分詞 already と just の位置ルール
完了形の文で頻繁に用いられる副詞 already(すでに、もう)と just(ちょうど、たった今)は、文中のどこに配置するかが文法上厳密に決まっています。位置を間違えると不自然な英語になるため、配置ルールを押さえましょう。
原則:助動詞 have / had と過去分詞の間に挟む
肯定文において、already と just は「助動詞(have / has / had)+ 副詞 + 過去分詞」の語順で置くのが鉄則です。
I have already read this book.
(私はすでにこの本を読みました。)
※ I already have read... や I have read already... は標準的な配置ではありません。
He has just arrived at the airport.
(彼はたった今、空港に到着したところです。)
already の位置に関する発展ルール
already は文末に置かれることもあります。文末に置くと、「予想よりも早く終わった」という驚きや強調のニュアンスが強くなります。
Have you finished your dinner already?
(もう夕食を食べ終えてしまったのですか=思いのほか早くて驚いている。)
表は横にスクロールできます →
| 副詞 | 標準的な配置場所 | 文末に置く場合 | 主な文種 |
|---|---|---|---|
| just | have と過去分詞の間 | 文末には置かない | 肯定文 |
| already | have と過去分詞の間 | 驚き・強調を示す場合は可能 | 肯定文(驚きを表す疑問文) |
| yet | 文末 | 通常は文末に配置 | 否定文(まだ)・疑問文(もう) |
否定文で「まだ〜していない」、通常の疑問文で「もう〜しましたか」と言いたいときは、already ではなく yet を文末に用いる点にも注意してください。
I have not received the email yet.
(私はまだそのメールを受け取っていません。)
have been 訳し方:完了受動態の構造
「have been + 過去分詞」や「had been + 過去分詞」は、完了形と受動態(受け身)が一つに合体した構文です。形が複雑に見えますが、2つの基本公式を足し算すると構造がすっきりと見えてきます。
完了受動態の足し算構造
完了形の公式「have + 過去分詞」と、受動態の公式「be動詞 + 過去分詞」を一段ずらして重ね合わせます。
- 完了形:have + 過去分詞
- 受動態:+(be動詞 + 過去分詞)
- 合計:have + been + 過去分詞
受動態の be動詞 が完了形の影響を受けて過去分詞の been に変化するため、必ず have been + 過去分詞 という形になります。
have been 過去分詞 と had been 過去分詞 の訳し方
意味は「受動態(〜される)」を「完了形(〜してしまった/ずっと〜されている/〜されたことがある)」の時間の枠組みに乗せて訳します。
The plan has been approved by the board.
(その計画は役員会によって承認された[現在完了受動態・完了]。)
This song has been loved for many years.
(この歌は何年もの間ずっと愛されている[現在完了受動態・継続]。)
The car had been repaired before I bought it.
(私が買う前に、その車はすでに修理されていた[過去完了受動態・大過去]。)
have been -ing(現在完了進行形)との混同に注意
後ろに続くのが過去分詞ではなく動名詞・現在分詞の -ing の場合は、「ずっと〜し続けている」という動作の継続(現在完了進行形)になります。-ed(過去分詞)なら受動態、-ing なら能動の進行形です。
He has been repaired... は「彼が修理された」となり誤りですが、He has been repairing the car. であれば「彼は車を修理し続けている」という自然な文になります。
完了受動態
- have been + 過去分詞(-ed)
- 意味:〜された、愛されている
- 受動(受け身)の動作や状態を表す
現在完了進行形
- have been + 現在分詞(-ing)
- 意味:ずっと〜し続けている
- 能動の動作の継続を表す
beenの後ろが過去分詞か-ingかで意味が受動か能動か分かれます。
could have 過去分詞 訳し方と助動詞完了形
could have + 過去分詞 は、仮定法過去完了や過去の推量で非常によく使われる重要表現です。直訳の「〜できた」と単純に処理してしまうと、文脈の意味を取り違える原因になります。
could have 過去分詞 の2大用法
この構文には、文脈によって大きく分けて2つの意味が存在します。
| 用法 | ニュアンス | 日本語訳の目安 |
|---|---|---|
| 仮定法(過去の可能性) | 能力や機会はあったのに、実際には行わなかった | 〜できたのに(しなかった) |
| 推量(過去の可能性) | 過去の出来事について「あり得た」と推測する | 〜だったかもしれない、〜もあり得た |
用例で具体的なニュアンスを掴みましょう。
I could have helped you if you had asked me.
(頼んでくれれば、手伝うことができたのに。[実際は頼まれなかったので手伝わなかった])
Be careful! You could have been killed!
(危ない!命を落としていたかもしれないぞ。[実際は無事だった])
他の「助動詞 + have + 過去分詞」との違い
助動詞の種類が変わると、過去に対する気持ち(後悔・推量・確信)が変わります。セットで覚えておくと読解力が向上します。
- should have + 過去分詞:〜すべきだったのに(実際はしなかったことへの後悔や非難)
You should have told me earlier.(もっと早く私に言うべきだったのに。) - must have + 過去分詞:〜だったに違いない(過去の事実に対する強い確信)
He must have forgotten the promise.(彼は約束を忘れてしまったに違いない。) - cannot have + 過去分詞:〜だったはずがない(過去の事実に対する強い否定)
She cannot have said such a thing.(彼女がそんなことを言ったはずがない。)
次の疑問shouldやmustなど他の助動詞との組み合わせも知りたいときは、助動詞+have+過去分詞の意味・用法が役立ちます。
過去分詞 時制の判別法と使えない表現
動詞の過去形と、過去分詞を使った完了形は、日本語に訳すといずれも「〜した」となって区別がつきにくくなることがあります。時間の流れをタイムラインで整理し、試験で頻出する誤りを防ぐ判別チェックリストを確認しましょう。
時制のタイムライン比較
過去形・現在完了形・過去完了形の根本的な違いは、「話者が意識している時間の幅」にあります。
- 過去形(did):【過去の1点】現在の状態とは完全に切り離された、過去の単なる事実。
過去の出来事だけを述べており、今どうなっているかは触れていない。 - 現在完了形(have done):【過去から現在までの線】過去の出来事が現在まで影響を及ぼしている。
「今も持っている」「今ちょうど終わった」「現在までに経験がある」など、意識は常に現在にある。 - 過去完了形(had done):【大過去から過去のある時点までの線】過去の基準点より前の出来事。
過去のその時点でどうであったかを述べる。
現在完了形と一緒に使えない語句
現在完了形は「現在とのつながり」を表すため、過去の明確な1点だけを指す副詞語句とは絶対に一緒に使えません。以下の表現がある場合は、現在完了形ではなく「過去形」を使います。
| 一緒に使えない語句の種類 | 具体例 | 正しい書き換え例 |
|---|---|---|
| 明確な過去の日時・時点 | yesterday, last night, in 2010 | × I have seen him yesterday. ○ I saw him yesterday. |
| 「〜前」を表す ago | three days ago, two years ago | × He has left an hour ago. ○ He left an hour ago. |
| 時を尋ねる疑問詞 / 過去の時を表す節 | When... ?, when I was a child | × When have you bought it? ○ When did you buy it? |
| ちょうどその時 | just now(たった今[過去形と使う]) | × She has arrived just now. ○ She arrived just now. |
※ just 単体であれば現在完了形で使えますが、just now は「少し前の過去の1点」を表すため過去形と用いるのが原則です。
過去分詞自体が「完了」を表すケース
過去分詞は通常「〜される」という受け身の意味を持ちますが、自動詞の過去分詞に限っては、受け身ではなく「動作が完了した状態」を表します。
- fallen leaves(落ち葉 = すでに地面に落ちた葉[受動ではなく完了])
- a retired teacher(退職した教師 = 退職という動作が完了した状態)
- the rising sun(昇りつつある朝日[現在分詞=進行]) ⇔ the risen sun(昇ったあとの朝日[過去分詞=完了])
このように、過去分詞という言葉そのものの中に「動作が完了して結果が残っている」という本質的なニュアンスが含まれています。
過去の1点の事実。現在とは切り離されている。
過去から現在までの線。意識は常に現在にある。
大過去から過去の時点までの線。基準点は過去。
話者が意識している時間の幅(点か線か)で時制を判別します。
続けて読む
理解度チェック
Q1. 肯定文における副詞 already の標準的な配置場所はどれ?
- 文頭に置く
- 助動詞と過去分詞の間に置く
- 文末にのみ置く
- 過去分詞の直後に置く
答えを見る
正解: B. 助動詞と過去分詞の間に置く
already は肯定文において「助動詞(have / has / had)+ 副詞 + 過去分詞」の順で間に挟むのが鉄則とされています。
Q2. 現在完了形の文と一緒に使えない語句はどれ?
- before
- twice
- since yesterday
- yesterday
答えを見る
正解: D. yesterday
現在完了形は過去の明確な1点だけを指す語句とは一緒に使えないため、yesterdayがある文では過去形を用います。
Q3. 「もっと早く言うべきだったのに」を表す正しい英文はどれ?
- You could have told me earlier.
- You should have told me earlier.
- You must have told me earlier.
- You cannot have told me earlier.
答えを見る
正解: B. You should have told me earlier.
「〜すべきだったのに(実際はしなかった)」という後悔や非難を表すには「should have + 過去分詞」を用います。
よくある質問
- Q. 過去分詞と過去完了の違いは何ですか?
- 過去分詞は動詞の活用形(writtenやplayedなど)そのものを指します。過去完了は「had + 過去分詞」で構成される文法時制のことで、過去のある時点より前に起きた動作や状態を表します。
- Q. have 過去分詞の日本語訳のコツは?
- 文中の副詞語句に注目します。already/justがあれば完了(〜した)、ever/never/回数があれば経験(〜したことがある)、for/sinceがあれば継続(ずっと〜している)と訳すと自然に判別できます。
- Q. 過去完了と大過去の違いは何ですか?
- 過去完了(had+過去分詞)という時制の枠組みの中で、特に「過去のある基準点よりもさらに前に起きた事実」を前後の時間差として際立たせて示す用法を「大過去」と呼びます。
- Q. alreadyの位置は文末でも良いですか?
- 原則は助動詞haveと過去分詞の間ですが、口語では文末に置かれることもあります。特に文末のalreadyは「もう終わったの?」という予想外の早さに対する驚きを込める際によく使われます。
- Q. Whenと現在完了形を一緒に使えない理由は?
- Whenは「いつ」という過去のピンポイントの1点を尋ねる言葉です。過去から現在までの時間の幅を前提とする現在完了形とは時間の捉え方が矛盾するため、原則として併用できません。
2026年9月24日更新・モチタン辞典編集部
already
just
since
for