Thì Hiện Tại Hoàn Thành (Present Perfect): Cách Dùng Mà Ai Cũng Hay Nhầm
Thì hiện tại hoàn thành (Present Perfect) là một trong những thì khiến người học tiếng Anh cảm thấy bối rối nhất. Thì này kết nối quá khứ với hiện tại — diễn tả hành động đã xảy ra trong quá khứ nhưng có liên quan đến thời điểm hiện tại. Nếu bạn đang học tiếng Anh, đây là thì bạn nhất định phải nắm vững để giao tiếp tự nhiên hơn.
1. Cấu Trúc Thì Hiện Tại Hoàn Thành
Thì hiện tại hoàn thành được tạo thành bằng trợ động từ have/has kết hợp với quá khứ phân từ (past participle — V3) của động từ chính. Đây là công thức cơ bản nhất bạn cần nhớ.
Khẳng định
I / You / We / They + have + V3 (past participle)
He / She / It + has + V3 (past participle)
Phủ định
I / You / We / They + have not (haven't) + V3
He / She / It + has not (hasn't) + V3
Nghi vấn
Have + I / you / we / they + V3?
Has + he / she / it + V3?
Mẹo nhớ
Dùng has cho ngôi thứ 3 số ít (he, she, it) và have cho tất cả các ngôi còn lại (I, you, we, they). Viết tắt: I've, you've, we've, they've, he's, she's, it's. Phủ định viết tắt: haven't, hasn't.
Ví dụ
I have finished my homework.
Tôi đã hoàn thành bài tập về nhà.
She has visited Paris twice.
Cô ấy đã đến Paris hai lần.
They haven't arrived yet.
Họ vẫn chưa đến.
2. Khi Nào Dùng Thì Hiện Tại Hoàn Thành?
Thì hiện tại hoàn thành được sử dụng trong 5 trường hợp chính sau:
2.1. Hành động đã xảy ra trong quá khứ nhưng không xác định thời gian cụ thể
Khi bạn muốn nói về một hành động đã xảy ra nhưng không quan trọng hoặc không đề cập đến thời điểm cụ thể khi nó xảy ra. Điều quan trọng là kết quả hoặc trải nghiệm của hành động đó.
Ví dụ
I have visited Paris.
Tôi đã đến Paris. (không nói khi nào)
Cô ấy đã đọc cuốn sách đó. (không nêu thời gian cụ thể)
We have met before.
Chúng ta đã gặp nhau trước đây.
2.2. Hành động bắt đầu trong quá khứ và kéo dài đến hiện tại
Dùng để diễn tả một hành động hoặc trạng thái bắt đầu trong quá khứ và vẫn còn tiếp tục đến thời điểm nói. Thường đi kèm với since (từ khi) và for (trong khoảng).
Ví dụ
She has lived here since 2020.
Cô ấy đã sống ở đây từ năm 2020. (và vẫn đang sống)
I have known him for ten years.
Tôi đã biết anh ấy được 10 năm. (và vẫn quen biết)
They have worked at this company for five years.
Họ đã làm việc ở công ty này được 5 năm.
Phân biệt since và for
Since + mốc thời gian cụ thể (since 2020, since Monday, since I was a child).
For + khoảng thời gian (for 5 years, for 2 hours, for a long time).
2.3. Kinh nghiệm, trải nghiệm trong đời
Dùng để nói về những trải nghiệm bạn đã có (hoặc chưa có) trong cuộc đời, thường đi kèm với ever (đã bao giờ) và never (chưa bao giờ).
Ví dụ
Have you ever tried sushi?
Bạn đã bao giờ thử sushi chưa?
I have never seen snow.
Tôi chưa bao giờ nhìn thấy tuyết.
She has travelled to more than 20 countries.
Cô ấy đã du lịch đến hơn 20 quốc gia.
2.4. Hành động vừa mới xảy ra (just)
Dùng với just để diễn tả hành động vừa mới xảy ra, kết quả vẫn còn rõ ràng ở hiện tại. Just đứng giữa have/has và V3.
Ví dụ
I have just finished my homework.
Tôi vừa mới hoàn thành bài tập về nhà.
Cô ấy vừa mới rời văn phòng.
They have just announced the results.
Họ vừa mới công bố kết quả.
2.5. Hành động lặp lại nhiều lần trong quá khứ đến hiện tại
Dùng để nói về hành động đã xảy ra nhiều lần tính từ quá khứ đến hiện tại, và có thể còn tiếp tục xảy ra.
Ví dụ
We have been to that restaurant three times.
Chúng tôi đã đến nhà hàng đó ba lần.
He has called me five times today.
Anh ấy đã gọi cho tôi năm lần hôm nay.
I have watched that movie several times.
Tôi đã xem bộ phim đó nhiều lần.
Luyện tập thì hiện tại hoàn thành ngay trên LearnMyWords!
Tạo tài khoản miễn phí để lưu từ vựng và luyện tập với flashcards thông minh.
3. Dấu Hiệu Nhận Biết (Signal Words)
Những từ và cụm từ sau thường xuất hiện cùng thì hiện tại hoàn thành. Khi gặp chúng trong câu, hãy nghĩ ngay đến Present Perfect!
| Từ tín hiệu | Nghĩa tiếng Việt | Ví dụ |
|---|---|---|
| since | từ khi, kể từ | I have lived here since 2018. |
| for | trong khoảng (thời gian) | She has worked here for 3 years. |
| already | đã... rồi | I have already eaten. |
| yet | chưa (phủ định / nghi vấn) | Have you finished yet? |
| just | vừa mới | He has just left. |
| ever | đã bao giờ (nghi vấn) | Have you ever been to Japan? |
| never | chưa bao giờ | I have never seen snow. |
| recently | gần đây | She has recently moved to a new house. |
| so far | cho đến nay | We have visited 5 countries so far. |
| up to now / until now | cho đến bây giờ | Up to now, he has written 3 books. |
| how long | bao lâu | How long have you lived here? |
Cảnh báo
Already thường đứng giữa have/has và V3: "I have already done it."
Yet thường đứng cuối câu phủ định hoặc câu hỏi: "I haven't done it yet."
Ever / Never đứng giữa have/has và V3: "Have you ever been there?"
4. Bảng Quá Khứ Phân Từ (Past Participle) Thường Gặp
Quá khứ phân từ (V3) có hai dạng: động từ có quy tắc (thêm -ed) và động từ bất quy tắc (phải học thuộc). Dưới đây là bảng tổng hợp những động từ thường gặp nhất.
Động từ có quy tắc (Regular Verbs)
| Nguyên mẫu (V1) | Quá khứ phân từ (V3) | Nghĩa |
|---|---|---|
| work | worked | làm việc |
| play | played | chơi |
| study | studied | học |
| finish | finished | hoàn thành |
| visit | visited | thăm, ghé thăm |
| live | lived | sống |
| travel | travelled | du lịch |
Động từ bất quy tắc (Irregular Verbs)
| Nguyên mẫu (V1) | Quá khứ đơn (V2) | Quá khứ phân từ (V3) | Nghĩa |
|---|---|---|---|
| go | went | gone | đi |
| do | did | done | làm |
| eat | ate | eaten | ăn |
| see | saw | seen | nhìn thấy |
| write | wrote | written | viết |
| take | took | taken | lấy, mang |
| give | gave | given | cho, tặng |
| know | knew | known | biết |
| speak | spoke | spoken | nói |
| break | broke | broken | vỡ, phá |
| choose | chose | chosen | chọn |
| drive | drove | driven | lái xe |
| forget | forgot | forgotten | quên |
| buy | bought | bought | mua |
| think | thought | thought | nghĩ |
| be | was / were | been | là, ở, thì |
| have | had | had | có |
| make | made | made | làm, tạo |
Mẹo học thuộc động từ bất quy tắc
Hãy nhóm các động từ có cùng dạng biến đổi để dễ nhớ hơn. Ví dụ: nhóm "i-a-u" (drink → drank → drunk, sing → sang → sung), nhóm "V2 = V3" (buy → bought → bought, think → thought → thought), nhóm "không đổi" (put → put → put, cut → cut → cut).
5. Những Lỗi Thường Gặp
Dưới đây là những lỗi mà người học tiếng Anh thường mắc phải khi sử dụng thì hiện tại hoàn thành. Hãy đọc kỹ để tránh nhé!
5.1. Dùng Past Simple thay vì Present Perfect (và ngược lại)
Sai
I went to Paris. It's a beautiful city.
Nếu muốn nói về trải nghiệm (không nêu thời gian cụ thể), dùng Present Perfect.
Đúng
I have been to Paris. It's a beautiful city.
5.2. Quên "have/has"
Sai
I finished my homework. (muốn nói: vừa mới xong)
Thiếu "have" — câu này thành Past Simple.
Đúng
I have finished my homework.
5.3. Dùng Present Perfect với thời gian cụ thể trong quá khứ
Sai
I have gone to the cinema yesterday.
"Yesterday" là thời gian cụ thể → không dùng Present Perfect.
Đúng
I went to the cinema yesterday.
Hoặc: I have been to the cinema. (bỏ "yesterday")
Quan trọng
Không bao giờ dùng thì hiện tại hoàn thành với các từ chỉ thời gian cụ thể trong quá khứ như: yesterday, last week, in 2020, two days ago, when I was young. Những từ này luôn đi với Past Simple.
5.4. Nhầm lẫn "gone" và "been"
has gone to = đã đi đến (và chưa về)
He has gone to Paris. → Anh ấy đã đi Paris rồi. (đang ở Paris, chưa về)
has been to = đã từng đến (và đã về rồi)
He has been to Paris. → Anh ấy đã từng đến Paris. (đã về rồi, đó là trải nghiệm)
Mẹo nhớ gone vs been
Gone = đã đi (one way — một chiều, chưa quay lại).
Been = đã đến và về rồi (round trip — khứ hồi, kinh nghiệm).
5.5. Nhầm "since" và "for"
Sai
I have lived here since 5 years.
"5 years" là khoảng thời gian → dùng "for".
She has worked here for 2020.
"2020" là mốc thời gian → dùng "since".
Đúng
I have lived here for 5 years.
She has worked here since 2020.
Cách phân biệt nhanh
Since + mốc thời gian (since 2020, since Monday, since last summer, since I was a child).
For + khoảng thời gian (for 5 years, for 2 hours, for a long time, for ages).
Nếu bạn có thể hỏi "bao lâu?" thì dùng for. Nếu bạn có thể hỏi "từ khi nào?" thì dùng since.
6. Phân Biệt Present Perfect Và Past Simple
Đây là phần hay nhầm nhất! Present Perfect và Past Simple đều nói về quá khứ, nhưng cách dùng rất khác nhau. Hãy xem bảng so sánh sau:
Present Perfect
Past Simple
| Tiêu chí | Present Perfect | Past Simple |
|---|---|---|
| Thời gian cụ thể | Không | Có |
| Liên quan đến hiện tại | Có | Không |
| Kết quả ở hiện tại | Quan trọng | Không quan tâm |
| Từ kèm theo | since, for, ever, never, just, already, yet | yesterday, last week, ago, in 2020, when |
So sánh cùng một tình huống
I have lost my key. (Present Perfect — Tôi bị mất chìa khóa rồi. → vẫn chưa tìm thấy, kết quả ảnh hưởng đến hiện tại)
I lost my key yesterday. (Past Simple — Tôi bị mất chìa khóa hôm qua. → nói về sự kiện quá khứ có thời gian cụ thể)
7. Bài Tập Thực Hành
Hướng dẫn
Hãy làm các bài tập dưới đây để kiểm tra hiểu biết của bạn về thì hiện tại hoàn thành. Ghi đáp án ra giấy rồi kiểm tra với phần đáp án ở mục 8.
Bài tập 1: Chia động từ ở thì hiện tại hoàn thành
- She _______ (visit) London three times.
- I _______ (not / see) that movie yet.
- They _______ (live) in this city since 2015.
- _______ you ever _______ (eat) Vietnamese food?
- He _______ (just / finish) his exam.
- We _______ (know) each other for ten years.
- She _______ (not / speak) to him since last Monday.
- I _______ (already / read) that book.
- _______ she _______ (travel) abroad before?
- They _______ (buy) a new house recently.
Bài tập 2: Chọn Present Perfect hay Past Simple
- I _______ (go) to the supermarket yesterday.
a) have gone b) went c) have been - She _______ (live) here for 10 years.
a) lived b) has lived c) was living - We _______ (see) that film last weekend.
a) have seen b) saw c) has seen - _______ you ever _______ (try) bungee jumping?
a) Did / try b) Have / tried c) Has / tried - He _______ (not / call) me since Friday.
a) didn't call b) hasn't called c) doesn't call
Bài tập 3: Sửa lỗi sai trong các câu sau
- I have went to Japan twice.
- She has lived here since 5 years.
- Have you ever go to Paris?
- He has already ate lunch.
- They have seen that movie last night.
8. Đáp Án
Bài tập 1: Chia động từ
- has visited — She (ngôi 3 số ít) + has + visited (V3 của visit)
- haven't seen — I + haven't + seen (V3 bất quy tắc của see). "Yet" = chưa.
- have lived — They + have + lived. "Since 2015" = từ năm 2015.
- Have you ever eaten — V3 bất quy tắc: eat → eaten.
- has just finished — He + has + just + finished. "Just" đứng giữa has và V3.
- have known — We + have + known (V3 bất quy tắc của know). "For ten years" = khoảng thời gian.
- hasn't spoken — She + hasn't + spoken (V3 bất quy tắc của speak). "Since last Monday" = mốc thời gian.
- have already read — I + have + already + read (V3 bất quy tắc: read → read). "Already" đứng giữa have và V3.
- Has she travelled — Has + she + V3. "Before" = trước đây.
- have bought — They + have + bought (V3 bất quy tắc của buy). "Recently" = gần đây.
Bài tập 2: Chọn Present Perfect hay Past Simple
- b) went — "Yesterday" là thời gian cụ thể → dùng Past Simple.
- b) has lived — "For 10 years" → hành động kéo dài đến hiện tại → Present Perfect.
- b) saw — "Last weekend" là thời gian cụ thể → dùng Past Simple.
- b) Have / tried — "Ever" đi với Present Perfect. "You" dùng "Have".
- b) hasn't called — "Since Friday" → mốc thời gian, hành động kéo dài đến hiện tại → Present Perfect.
Bài tập 3: Sửa lỗi sai
- I have been to Japan twice. ("went" → "been"; V3 của go là "gone", nhưng "have been to" = đã từng đến)
- She has lived here for 5 years. ("since" → "for"; "5 years" là khoảng thời gian, dùng "for")
- Have you ever been to Paris? ("go" → "been"; sau have phải là V3, và dùng "been to" cho trải nghiệm)
- He has already eaten lunch. ("ate" → "eaten"; V3 bất quy tắc: eat → eaten, không phải ate)
- They saw that movie last night. (Bỏ "have"; "last night" là thời gian cụ thể → dùng Past Simple)
Lời khuyên
Cách tốt nhất để thành thạo thì hiện tại hoàn thành là thực hành mỗi ngày. Hãy thử viết 5 câu với have/has + V3 về cuộc sống của bạn. Ví dụ: "I have lived in Hanoi for 10 years", "I have never been to Europe". Càng viết nhiều, bạn càng tự tin hơn!
Luyện tập ngay trên LearnMyWords!
Tạo tài khoản miễn phí để lưu tiến trình học và luyện tập với flashcards thông minh.
