Bài 48 · Chặng 4: Thì & động từ khuyết thiếu
Thì hiện tại hoàn thành tiếp diễn
Nâng caoPresent perfect continuous
Công thức & cách dùng
have/has been + -ing — việc bắt đầu từ trước và vẫn đang tiếp tục
1.Cấu trúc
Thì hiện tại hoàn thành tiếp diễn = have / has + been + V-ing. Been giữ nguyên; chỉ have/has đổi theo chủ ngữ.
| I / you / we / they | he / she / it | |
|---|---|---|
| Khẳng định | I've been waiting. | It's been raining. |
| Phủ định | I haven't been sleeping well. | She hasn't been working. |
| Câu hỏi | Have you been waiting long? | Has it been raining? |
| Trả lời ngắn | Yes, I have. / No, I haven't. | Yes, it has. / No, it hasn't. |
Cần đủ ba phần: have/has + been + V-ing. Lỗi hay gặp: quên been (I have working), viết being thay cho been (has being working), hoặc quên -ing (has been learn).
2.Khi nào dùng
1. Hoạt động bắt đầu trong quá khứ và vẫn đang tiếp diễn — thường đi với How long…?, for, since, all day
It's been raining since lunchtime.
Trời mưa từ trưa đến giờ.
How long have you been learning English?
Bạn học tiếng Anh bao lâu rồi?
Nam has been working for the same company since 2019.
Nam làm cho cùng một công ty từ năm 2019.
2. Hoạt động vừa mới dừng, kết quả vẫn còn thấy rõ
Your eyes are red. Have you been crying?
Mắt bạn đỏ hoe. Bạn vừa khóc à?
Sorry I'm so sweaty — I've been running.
Xin lỗi, mình đầy mồ hôi — mình vừa chạy bộ.
3. Việc lặp đi lặp lại trong thời gian gần đây — với lately, recently, these days
I've been going to the gym a lot lately.
Dạo này tôi đi tập gym nhiều.
Linh hasn't been sleeping well recently.
Gần đây Linh ngủ không ngon.
3.So với hiện tại hoàn thành đơn
Thì tiếp diễn nhấn vào hoạt động và thời gian kéo dài; thì đơn nhấn vào kết quả — cái đã xong, đã làm được.
| Hoàn thành tiếp diễn | Hoàn thành đơn |
|---|---|
| hoạt động, quá trình | kết quả, việc đã xong |
| bao lâu: How long…?, for, since | bao nhiêu: How much / How many…?, số lượng, số lần |
| có thể chưa xong | đã xong |
| I've been painting the room. | I've painted the room. |
I've been reading this book for a week. I'm on page 90.
Tôi đọc cuốn này một tuần nay rồi, đang ở trang 90. (chưa xong)
I've read three books this month.
Tháng này tôi đọc xong ba cuốn rồi. (đếm số lượng, đã xong)
She's been writing emails all morning.
Cả buổi sáng cô ấy ngồi viết email.
She's written twelve emails this morning.
Sáng nay cô ấy viết được mười hai cái email rồi.
Khi đếm bao nhiêu (three books, twelve emails, How many…?) → thường dùng thì đơn. Khi nói bao lâu (for two hours, all day, How long…?) → thường dùng thì tiếp diễn.
4.Động từ chỉ trạng thái
Các động từ chỉ trạng thái như know, like, want, believe, belong, have (nghĩa sở hữu) thường không dùng ở dạng tiếp diễn, nên dùng hiện tại hoàn thành đơn kể cả khi nói bao lâu.
I've known Hoa since we were at school.
Tôi quen Hoa từ hồi đi học. (không: have been knowing)
How long have you had your cat?
Bạn nuôi con mèo bao lâu rồi? (have = sở hữu)
Với live, work, study, teach, cả hai thì đều đúng và nghĩa gần như nhau. Thì tiếp diễn có thể gợi cảm giác tạm thời, thì đơn gợi cảm giác lâu dài, ổn định.
We've been living with my parents since March.
Từ tháng Ba nhà tôi ở tạm với bố mẹ. (tạm thời)
My grandparents have lived in this village all their lives.
Ông bà tôi sống ở làng này cả đời. (lâu dài)
5.So với hiện tại tiếp diễn
Hiện tại tiếp diễn chỉ nói việc đang xảy ra. Khi thêm bao lâu (for, since, How long…?), phải chuyển sang hiện tại hoàn thành tiếp diễn.
We're waiting for the bus.
Chúng tôi đang đợi xe buýt.
We've been waiting for the bus for forty minutes!
Chúng tôi đợi xe buýt bốn mươi phút rồi! (không: We are waiting … for forty minutes)
Tiếng Việt nói “Tôi đang học tiếng Anh được hai năm rồi” — có chữ “đang”, nhưng cũng có “được … rồi” chỉ khoảng thời gian, nên tiếng Anh là I've been learning English for two years, không phải I'm learning English for two years.
6.Lỗi thường gặp
It is raining since this morning.It has been raining since this morning.
Có since → dùng thì hoàn thành.
I have been work here since 2020.I have been working here since 2020.
Sau been dùng V-ing.
He has being working on this project since March.He has been working on this project since March.
have/has + been, không phải being.
I have been studying for this exam since three weeks.I have been studying for this exam for three weeks.
Three weeks là khoảng thời gian → for.
I've been knowing her for years.I've known her for years.
Know là động từ trạng thái → thì đơn.
Did you been exercising lately?Have you been exercising lately?
Câu hỏi đưa have/has lên trước chủ ngữ, không dùng did.
Ví dụ
- My eyes hurt. I have been looking at this screen since nine o'clock.
- How long have you been learning English?
- My phone has been ringing for five minutes. Can you answer it?
- Grandma has been cooking in the kitchen all morning, so lunch will be delicious.
