明日の夕方、友達と会う予定がある。それまでには宿題を済ませておきたい。
そんなとき、英語では次のように伝えられます。
I will have finished my homework by six tomorrow.
「私は明日の6時までには、宿題を終えているでしょう」
明日の6時に宿題を始めるのではありません。その時点では、もう終わっているということです。
このように、未来のある時点を基準にして、「それまでにどうなっているか」を表すのが、今回学ぶ「未来完了」です。
まずは、明日の6時の自分を思い浮かべてください。そのとき、宿題は済んでいる。この場面と英文を結びつけるところから始めましょう。
こんにちは。英語講師のTaka先生・根岸貴規です。私は日本国内で教科書の音読を中心に英語を身につけ、その英語を使って外資系投資銀行で約20年間働いてきました。英検1級・TOEIC980点を取得し、これまで累計14,000人以上の方に英語学習を指導してきました。ストアカでは、2022年から2025年まで4年連続で「最多受講者賞」を、2025年には「ストアカン・オブ・ザ・イヤー」をいただきました。
今回は、英検準2級の英文法を学ぶ全23回の第3回です。前回は、過去のある時点を基準にする「過去完了」を扱いました。今回は、その基準を未来に置いて考えます。
目次
■ 基本の形|「willの後ろは、have? has?」
未来完了は、次の形で作ります。
主語 + will have + 過去分詞
She will have finished the work by Friday.
「彼女は金曜日までには、その仕事を終えているでしょう」
主語がSheでも、will hasとはしません。助動詞willの後ろには動詞の原形を置くため、haveを使います。
Iでも、heでも、theyでも、will haveの部分は同じです。
そして、haveの後ろには過去分詞を置きます。過去形と混同しやすい動詞を確認しておきましょう。
・finish → finished → finished「終える」
・write → wrote → written「書く」
・eat → ate → eaten「食べる」
・know → knew → known「知っている」
左から「原形・過去形・過去分詞」の順です。
例えば、writeを使うなら、次の形になります。
I will have written the letter by tomorrow.
「私は明日までには、その手紙を書き終えているでしょう」
will have wroteではなく、will have writtenです。
このhaveは、完了形を作るために使っています。「持っている」とは訳しません。will have writtenまでを一つのまとまりとして、「書き終えているだろう」と捉えてください。
■ 未来形との違い|「I will finishでは、いけないの?」
次の二つは、どちらも正しい英文です。
I will finish my homework by six tomorrow.
「私は明日の6時までに宿題を終えます」
I will have finished my homework by six tomorrow.
「私は明日の6時までには、宿題を終えているでしょう」
最初の文は、宿題を終えるという未来の行動を伝えています。
二つ目は、明日の6時という時点に目を向けて、そのときには宿題が終わっていると伝えています。
同じ予定を、少し違う捉え方で述べているのです。
ですから、「byがあれば、必ず未来完了にする」と覚えないでください。by six tomorrowを使っていても、普通の未来形で伝えられます。
未来完了を選ぶときは、「未来のその時点では、すでにどうなっているか」を考えてみましょう。
■ 完了形の比較|「現在完了・過去完了とは、何が違うの?」
違うのは、基準にする時点です。同じ「宿題を終える」という内容で比べます。
① 現在完了は「今」が基準
I have already finished my homework.
「私はもう宿題を終えています」
今の時点で、宿題が終わっています。
② 過去完了は「過去のある時点」が基準
I had already finished my homework when Ken called.
「ケンから電話があったとき、私はすでに宿題を終えていました」
ケンから電話があった過去の時点で、宿題が終わっていました。
③ 未来完了は「未来のある時点」が基準
I will have finished my homework by six tomorrow.
「私は明日の6時までには、宿題を終えているでしょう」
明日の6時という未来の時点では、宿題が終わっていると考えています。
have finished、had finished、will have finishedを比べながら、「今」「過去のそのとき」「未来のそのとき」と基準を動かしてみてください。
現在完了の考え方から確認したい方は、こちらの記事も参考にしてください。
■ 三つの使い方|「完了・経験・継続も表せるの?」
未来完了にも、「完了・結果」「経験」「継続」の使い方があります。いずれも、未来のある時点までのことを述べています。
① 完了・結果|そのときまでに終わっている
I will have finished the report by Friday.
「私は金曜日までには、そのレポートを仕上げているでしょう」
金曜日を基準にすると、レポートは仕上がっているということです。
仕事、宿題、準備などについて、「そのときまでには済んでいる」と伝えるときに使います。
② 経験|そのときまでに、したことがある
I will have visited Kyoto three times by the end of this year.
「今年の終わりまでには、私は京都を3回訪れたことになります」
例えば、これまでに2回京都へ行ったことがあり、年内にもう1回行く予定があるなら、このように言えます。
今年の終わりを基準にすると、京都を訪れた経験が合計3回になる、ということです。「今年だけで3回行く」とは限りません。
③ 継続|そのときまで、ある状態が続いている
I will have known Ken for ten years next month.
「来月で、ケンと知り合って10年になります」
knownは、knowの過去分詞です。「ケンを知っている」という状態が、来月の時点で10年間続いていることになります。
for ten yearsは「10年間」という期間を表しています。
ここで、「未来完了だから、来月で付き合いが終わる」と考えないでください。この文が伝えているのは、来月の時点での付き合いの長さです。その後も関係が続くことと矛盾しません。
「完了」という名前でも、何かが終わる場合だけに使うわけではないのです。
■ byとuntil|「どちらも『まで』なのに、何が違うの?」
日本語では似ていても、英語では使い分けが必要です。
① byは「〜までに」
I will have finished my homework by nine tonight.
「私は今夜9時までには、宿題を終えているでしょう」
9時の時点では、宿題が終わっているという意味です。8時に終わっていても、8時半に終わっていても構いません。
byは、「その時刻より遅くならない」という期限を示します。
② untilは「〜までずっと」
I will study until nine tonight.
「私は今夜9時まで勉強します」
こちらは、勉強を9時まで続けるという意味です。
「9時までに終える」のか、「9時まで続ける」のか。この違いを確かめてください。
・by nine:9時までに
・until nine:9時までずっと
日本語の「まで」だけを見て選ぶと、取り違えやすくなります。期限を伝えたいのか、その時点まで続くことを伝えたいのかを考えましょう。
■ by the time|「未来の話なのに、なぜarrivesなの?」
時刻だけでなく、別の出来事を基準にすることもできます。
I will have eaten dinner by the time Ken arrives.
「ケンが到着するまでには、私は夕食を食べ終えているでしょう」
ケンが到着する時点では、夕食は済んでいるということです。
ここでは、二つの部分を分けて見てください。
・I will have eaten dinner:夕食を食べ終えているだろう
・by the time Ken arrives:ケンが到着するまでには
ケンが到着するのは未来のことですが、後半はwill arriveではなく、現在形のarrivesです。
この文のby the time Ken arrivesは、「いつまでに夕食を食べ終えているのか」を補足しています。このように時を表す部分では、未来のことも通常は現在形で表します。
また、主語がKenなので、arriveに三単現のsが付きます。
未来の話だからといって、文の中の動詞をすべてwillを使う形にするわけではありません。未来完了で伝える部分と、時を示す部分を分けて確認してください。
■ 否定文と疑問文|「notはどこに置く? 何を前に出す?」
否定文では、willの後ろにnotを入れます。
主語 + will not have + 過去分詞
I will not have finished the report by six tomorrow.
「私は明日の6時までには、そのレポートを仕上げていないでしょう」
will notは、won'tと短くできます。
I won't have finished the report by six tomorrow.
「私は明日の6時までには、そのレポートを仕上げていないでしょう」
この文は、明日の6時の時点では、まだ仕上がっていないだろうという意味です。その後もずっと仕上がらない、ということではありません。
疑問文では、willを主語の前に出します。
Will + 主語 + have + 過去分詞 + …?
Will you have finished the report by six tomorrow?
「明日の6時までには、そのレポートを仕上げていますか?」
have finishedの部分は変えません。
答えるときは、willを使います。
Yes, I will.
「はい、それまでには仕上げています」
No, I won't.
「いいえ、その時点ではまだ終わっていません」
質問にhaveも入っていますが、Will you ...?への短い答えは、Yes, I will.またはNo, I won't.です。
相手からyouについて聞かれているので、自分について答えるときはIに替えます。
■ よくある間違い|「willの後ろとhaveの後ろを確認しよう」
① 主語に合わせてhaveをhasにしてしまう
× She will has finished the work by tomorrow.
○ She will have finished the work by tomorrow.
「彼女は明日までには、その仕事を終えているでしょう」
現在完了のShe has finishedにつられないようにしましょう。willの後ろは原形なので、主語がSheでもhaveです。
② haveの後ろに過去形を置いてしまう
× I will have wrote the letter by tomorrow.
○ I will have written the letter by tomorrow.
「私は明日までには、その手紙を書き終えているでしょう」
writeの過去形はwrote、過去分詞はwrittenです。haveの後ろには、過去分詞を置きます。
形に迷ったら、次の二点を確認してください。
・willの後ろは原形のhaveになっているか。
・haveの後ろは過去分詞になっているか。
■ 復習用|「未来完了で迷ったら、ここを確認」
① 基準は「未来のある時点」
その時点までに終わっていること、経験していること、続いている状態を表します。
② 基本の形は三つ
・肯定文:主語 + will have + 過去分詞
・否定文:主語 + will not have + 過去分詞
・疑問文:Will + 主語 + have + 過去分詞 + …?
主語が変わっても、will haveの形は変わりません。
③ 時間を表す言葉を区別する
・by:〜までに
・until:〜までずっと
・by the time + 主語 + 動詞:〜するときまでには
by the timeで未来の時を示す部分は、通常、現在形にします。
④ byだけで動詞の形を決めない
普通の未来形でも、byを使えます。未来の時点で「すでに終わっている」と伝えたいのかを考えましょう。
■ 確認問題|「形だけでなく、意味も確かめよう」
次の8問に取り組んでください。この記事の学習用に作成した問題です。
① 正しい語を選んでください。
He will have(eat/ate/eaten)breakfast by eight tomorrow.
「彼は明日の8時までには、朝食を食べ終えているでしょう」
② 間違っている語を直してください。
My brother will has cleaned his room by noon tomorrow.
「私の兄は明日の正午までには、自分の部屋を掃除し終えているでしょう」
③ 日本語の「9時までに」に合う語を選んでください。
I will have finished my homework(by/until)nine tonight.
「私は今夜9時までには、宿題を終えているでしょう」
④ 次の文を否定文にしてください。
We will have sent the email by noon tomorrow.
「私たちは明日の正午までには、そのメールを送っているでしょう」
⑤ 正しい語を選んでください。
I will have finished my homework by the time my mother(comes/will come)home.
「母が帰宅するまでには、私は宿題を終えているでしょう」
⑥ 質問に「はい」と答える文の空欄に、2語を入れてください。
Will you have finished the report by six tomorrow?
「明日の6時までには、そのレポートを仕上げていますか?」
Yes,( )( ).
「はい、それまでには仕上げています」
⑦ 次の文は、「来月でケンとの付き合いが終わる」という意味ですか?
I will have known Ken for ten years next month.
「来月で、ケンと知り合って10年になります」
⑧ 次の日本語を、未来完了を使って英語にしてください。「書く」にはwriteを使います。
「私は明日の正午までには、その手紙を書き終えているでしょう」
■ 解答と解説|「どこを見て、その答えを選ぶの?」
① eaten
He will have eaten breakfast by eight tomorrow.
「彼は明日の8時までには、朝食を食べ終えているでしょう」
haveの後ろは過去分詞です。eatの過去形はate、過去分詞はeatenなので、will have eatenになります。
② has → have
My brother will have cleaned his room by noon tomorrow.
「私の兄は明日の正午までには、自分の部屋を掃除し終えているでしょう」
willの後ろには、動詞の原形を置きます。主語が一人のお兄さんでも、hasにはしません。
cleanedはclean「掃除する」の過去分詞です。
③ by
I will have finished my homework by nine tonight.
「私は今夜9時までには、宿題を終えているでしょう」
9時までに終わっているという期限を表すので、byです。untilは、動作や状態がその時点まで続くときに使います。
④ willの後ろにnotを入れる
We will not have sent the email by noon tomorrow.
「私たちは明日の正午までには、そのメールを送っていないでしょう」
won'tを使っても正解です。have sentの部分は変えません。
sentはsend「送る」の過去分詞です。明日の正午の時点では、まだ送信していないだろうと伝えています。
⑤ comes
I will have finished my homework by the time my mother comes home.
「母が帰宅するまでには、私は宿題を終えているでしょう」
by the timeで時を示す部分では、未来のことも現在形で表します。主語がmy motherなので、comeにsを付けてcomesです。
⑥ I will
Yes, I will.
「はい、それまでには仕上げています」
Will you ...?という質問なので、willを使って答えます。自分について答えるため、主語はIです。
⑦ いいえ、その意味ではありません
I will have known Ken for ten years next month.
「来月で、ケンと知り合って10年になります」
来月の時点で、ケンを知っている状態が10年間続いているという意味です。来月以降の付き合いが終わるとは述べていません。
⑧ 解答例
I will have written the letter by noon tomorrow.
「私は明日の正午までには、その手紙を書き終えているでしょう」
「明日の正午までに」はby noon tomorrowです。
その時点では手紙を書き終えているので、will have writtenを使います。writeの過去分詞がwrittenになっているかも確認してください。
時を表すby noon tomorrowを文頭に置いても正解です。
答え合わせでは、正解した数だけでなく、迷った場所を見てください。
haveとhasで迷ったのか。過去分詞を思い出せなかったのか。byとuntilの意味が曖昧だったのか。
つまずいた箇所が分かれば、復習する内容も決められます。解説を確認したら答えを隠し、もう一度、自分で英文を作ってみましょう。
■ 今日の練習|「未来の自分が、何を終えているか伝えよう」
まずは、次の一文を使います。
I will have finished my homework by nine tonight.
「私は今夜9時までには、宿題を終えているでしょう」
① 場面と文の形を確認する
今夜9時の自分を思い浮かべてください。そのときには宿題が終わっています。
will have finishedが未来完了、by nine tonightが基準になる時刻を示しています。
② 音声を確認して、繰り返し音読する
単語の発音が分からない場合は、辞書や教材の音声で確かめます。
そのうえで、意味を思い浮かべながら、同じ英文を繰り返し読んでください。will have finishedを一つのまとまりとして声に出します。
③ 英文を隠し、言ってから書く
日本語だけを見て、英語で言ってみましょう。言えたら、何も見ずに書いてください。
will haveがそろっているか、finishedをfinishにしていないか、byが入っているかを確認します。
途中で止まったら、英文を見直して構いません。確認した後に、もう一度隠して言ってみてください。
④ 自分の予定に置き換える
宿題がない方なら、読書や仕事、メールの送信など、自分に関係のある内容に替えます。
I will have finished this book by Sunday.
「私は日曜日までには、この本を読み終えているでしょう」
I will have sent the email by noon tomorrow.
「私は明日の正午までには、そのメールを送っているでしょう」
何を、いつまでに終えているのか。自分の予定を一つ選んで、英文を作ってください。
時間が足りないと思うなら、否定文にしても構いません。
I won't have finished this book by Sunday.
「私は日曜日までには、この本を読み終えていないでしょう」
肯定文を言うだけでなく、自分の見通しに合わせて肯定・否定を選ぶところまで練習しましょう。
私が大切にしているのは、「分かる」「できる」「忘れない」の3段階です。
説明を読んで分かったら、自分で言える・書けるまで練習する。そして、次のスキマ時間にも、何も見ずに思い出してみる。食後や歯磨きの後など、毎日の行動と結びつけておくと、復習する機会を作りやすくなります。
こうした練習の進め方は、こちらの記事でも紹介しています。
未来完了で迷ったら、「そのときには、どうなっているか」と考えてください。
明日の正午、金曜日、今年の終わり。基準にする時点を一つ決めると、伝えたい内容も具体的になります。今日は、自分の予定について一文を作り、見ずに言えるところまで練習してみましょう。
次回、第4回のテーマは「by以外の前置詞を使う受動態」です。受動態では、後ろに続く前置詞がいつもbyとは限りません。前置詞まで含めて覚えたい表現を、短い例文で確認していきます。
■ 参考資料
British Council LearnEnglish:Future continuous and future perfect
British Council LearnEnglish:Verbs in time clauses and if clauses
Cambridge Dictionary:Before(before・by・untilの使い分け)
根岸貴規
1人でも多くの英語学習者のお役に立てるような情報を発信しています。英語をもっと頑張りたい方、頑張っているのになかなか続かない方は、ぜひ他の投稿も参考にしてみてください。