現在完了形は、過去の出来事を今につなげます。大切なのは「いつ」ではなく、今の結果や今とのつながりです。
このレッスンで学ぶこと
現在完了形は、前に起きたことを今につなげます。起きたばかりだから、その結果が今も大切だから、あるいは「今までのどこかで」起きたことで、いつかは言わないから、という理由です。
日本語には「〜した」という過去の形が1つしかないので、最初はこの区別がわかりにくいかもしれません。たとえば「鍵をなくした」は、英語では “I've lost my keys.” と言えば「今も鍵がない」という今の状況を伝えます。学校で習う「経験(〜したことがある)」「完了(もう〜した)」「継続(ずっと〜している)」は、どれも今とのつながりを表す使い方です。ただし、yesterday、last week、in 2019 のような終わった特定の時とはいっしょに使えません。
have(I/you/we/they)または has(he/she/it)の後に、動詞の過去分詞(3つ目の形)を続けます。多くの過去分詞は -ed で規則的ですが、よく使う動詞には不規則動詞がたくさんあります:go → gone、see → seen、do → done。
過去形と過去分詞を混同しないようにしましょう。go-went-gone の went は過去形なので、“She has went home.” は誤りで、“She has gone home.” が正しい形です。主語が he、she、it のときは have ではなく has です。
短縮形:I've、you've、we've、they've、he's/she's/it's(= has)。否定文:haven't/hasn't。疑問文:have/has を主語の前に出します:“Have you finished?”
ever(主に疑問文)と never は、今までの人生の経験について話します。already(主に肯定文)と yet(疑問文と否定文)は、もう起きたか、まだ起きていないかを表します。just は「ちょうど〜したところ」です。so far や up to now は、その期間がまだ続いていることを示します。
日本語の「今までに〜したことがある」につられて、肯定文に ever を入れないようにしましょう。“I have ever been to Kyoto.” は誤りで、“I have been to Kyoto.” が正しい文です。ever は “Have you ever eaten sushi?”(すしを食べたことがありますか)のように疑問文で使い、否定は never です。
「もう」と「まだ」にも注意しましょう。肯定文の「もう〜した」は already:“She has already left.”。でも疑問文の「もう〜した?」は、ふつう文末に yet を使います:“Have you finished the report yet?”。「まだ〜していない」は not … yet です:“I haven't finished yet.”。「ちょうど着いたところです」は “He's just arrived.” です。
旅行や経験の「〜に行ったことがある」は gone ではなく been を使います:“Have you ever been to Japan?”。gone は「行ってしまって、まだ戻っていない」という意味です:“She has gone home.”(彼女は家に帰りました=今ここにいません)。
現在完了形は、いつ起きたかを言わないとき、または重要でないときに使います。yesterday、in 2019、last week、two days ago のような終わった特定の時を言ったら、過去形にしなければなりません。when で始まる疑問文も過去形です。
日本語ではどちらも「〜した」なので、「昨日見た」「2019年にパリに行った」「いつ着いたの?」もすべて同じ形です。英語では “I saw him yesterday”、“I visited Paris in 2019”、“When did you arrive?” と過去形を使い、“I have seen him yesterday” や “When have you arrived?” とは言いません。「昨日」「先週」「〜年に」「〜前」「いつ」があったら過去形、と覚えておきましょう。
一方、まだ終わっていない期間には現在完了形を使います:“How many books have you read this year?”(今年はまだ続いています)。過去に始まって今も続いていることも同じです。日本語の「ここに5年住んでいる」は「〜ている」ですが、英語では “I am living here for five years” ではなく “I've lived here for five years.” と言います。for は期間(for five years)、since は始まった時点(since 2019)に使います。“since five years ago” も避けて、for five years と言いましょう。
知っておくと便利:アメリカ英語の会話では、今の結果を伝えるときや just、already、yet といっしょでも過去形がよく使われます(“I just saw her.”、“Did you eat yet?”、“I lost my keys!”)。イギリス英語では現在完了形を使うのがふつうです。このレッスンの練習問題では、今の結果を伝える文や just、already、yet がある文は、現在完了形を正解にしています。
last week のような終わった特定の時があるときは、現在完了形ではなく過去形を使います。
「今までに京都に行ったことがある」の「今までに」を ever にしないようにしましょう。ever は主に疑問文で使います。
「5年住んでいる」は「〜ている」でも、過去から今まで続いていることなので現在完了形を使います。
現在完了形には過去分詞(gone、3つ目の形)が必要です。過去形(went)は使えません。
「いつ着いたの?」のように when で聞くのは特定の時なので、過去形を使います。
「〜に行ったことがありますか」という経験には been を使うのが標準的です。gone は「行ってしまって今はいない」という意味になりやすい語です。
日本語の過去は「〜した」の1つだけです:「鍵をなくした」「昨日映画を見た」「いつ着いたの?」
英語では、日本語の形ではなく「終わった特定の時を言っているか」で決めます。yesterday、last week、in 2019、ago や when があれば過去形:“I saw him yesterday”、“When did you arrive?”。特定の時がなく、経験や今の結果を伝えるなら現在完了形:“I've seen this film”、“I've lost my keys”。
「〜したことがある」「〜したことがない」:日本語にも経験を表す決まった言い方があります
これは大きな助けになります。「〜したことがある」はそのまま have +過去分詞、「〜したことがない」は have never +過去分詞です:“I have never been there.”、“Have you ever eaten sushi?”。ただし「今までに」につられて肯定文に ever を入れないこと、「行ったことがある」は gone ではなく been にすることに注意しましょう。
「ここに5年住んでいる」「2019年からこの会社で働いている」:日本語では「〜ている」で継続を表します
英語では、過去に始まって今も続いていることに現在完了形を使います:“I've lived here for five years”。“I am living here for five years” や “I live here since five years” は誤りです。期間には for(for five years)、始まった時点には since(since 2019)を使います。「5年前に」のような終わった時点は five years ago で、過去形といっしょに使います。
「もう〜した」「もう〜した?」「まだ〜していない」「ちょうど〜したところ」
肯定文の「もう」は already(“We have already had dinner.”)、疑問文の「もう〜した?」はふつう yet(“Have you finished your work yet?”)、「まだ〜していない」は not … yet(“They haven't arrived yet.”)、「ちょうど〜したところ」は have just(“He has just heard the news.”)です。疑問文で already を使うと、「もう?」という意外さや確認の響きが加わります(“Have you eaten lunch already?”)。
💡 yesterday、last week、in 2019、ago のような終わった時や when の疑問文があれば過去形。日本語ではどちらも「〜した」です。
💡 「〜したことがある」→ have +過去分詞。肯定文に ever は入れず、「行ったことがある」は been を使います。
💡 「5年住んでいる」→ I've lived here for five years。期間は for、始まった時点は since です。
💡 「もう〜した」→ already、「もう〜した?」→ … yet?、「まだ〜していない」→ not … yet、「ちょうど〜した」→ have just。
"Have you seen the new café downtown?"
"Not yet — I've heard it's really good, though."
"We should go. Have you eaten lunch already?"
"No, I haven't. Let's go now, actually."
練習問題 1 · 正しい形を選びましょう
I ___ my keys — can you help me find them? (British English)
練習問題 2 · 正しい形の組み合わせを選びましょう
___ you ever ___ to Japan?
練習問題 3 · 正しい形を選びましょう
She ___ this movie three times already.
練習問題 4 · 正しい語を選びましょう
We haven't finished the report ___.
練習問題 5 · 正しい形の組み合わせを選びましょう
He ___ just ___ the news.
練習問題 6 · 正しい語を選びましょう
I've ___ eaten sushi.
練習問題 7 · 正しい形を選びましょう
How many books ___ this year?
練習問題 8 · 文を完成させましょう
Complete: She ___ (finish) her homework already.
練習問題 9 · 文を完成させましょう
Complete: They ___ (not/arrive) yet.
練習問題 10 · 単語を並べ替えましょう
練習問題 11 · 正しい文を選びましょう
Which is correct?
練習問題 12 · 日本語話者の落とし穴:「〜ている」+期間
Japanese: "東京に5年住んでいます。" (I still live there.) Which English sentence is correct?
5つの問題で、学んだことを確認しましょう。
問題 1 / 5
スコア:0/0
We ___ already ___ dinner.
現在完了進行形(Present Perfect Continuous)
have/has been + -ing で「ずっと〜している」を表します。日本語の「〜ている」をそのまま現在進行形にしないコツと、for・since の使い分けを学びましょう。
現在進行形(Present Continuous)
現在進行形(be + -ing)は「今〜している」「しばらく〜している」を表します。作り方と使い方、そして「知っている」を -ing にしない理由を学びましょう。
現在形(Present Simple)
習慣・事実・時刻表を表す現在形。she works の三単現の s、do/does を使った否定文と疑問文、日本語の「〜ている」との違いまで押さえます。
連結動詞(Linking Verbs)
be、seem、become、look、taste などは主語と説明をつなぐ動詞。「若く見える」の「く」につられず、looks young、tastes good と形容詞を使う理由を解説します。