B1 Trung cấp Thì hoàn thành và quá khứ
Hiện tại hoàn thành tiếp diễn Present perfect continuous
Mục tiêu bài học. Học xong bài này em nhấn mạnh được quá trình kéo dài bằng have been + V-ing, và phân biệt với have + V3.
Khi nào dùng
- Việc bắt đầu trong quá khứ và vẫn đang tiếp tục: I have been studying for two hours.
- Việc vừa dừng nhưng để lại dấu vết: Your hands are dirty — have you been painting?
- Nhấn vào bao lâu chứ không phải bao nhiêu.
Công thức
| Loại câu | Cấu trúc | Ví dụ |
|---|---|---|
| Khẳng định | S + have/has been + V-ing | She has been waiting. |
| Phủ định | S + haven't/hasn't been + V-ing | I haven't been sleeping well. |
| Nghi vấn | Have/Has + S + been + V-ing? | Have you been running? |
| Hay đi với | for, since, all day, how long | for two hours · since Monday |
Các bước làm
- Hỏi: việc này có kéo dài và còn liên quan tới hiện tại không?
- Có, và em muốn nhấn vào quá trình → have/has been + V-ing.
- Nếu muốn nhấn vào kết quả hoặc số lượng đã làm xong → have/has + V3.
- Kiểm tra động từ: nếu là động từ trạng thái (know, like, have = sở hữu) thì không dùng tiếp diễn.
Hai thì đặt cạnh nhau
| Câu | Nhấn mạnh | Ngụ ý |
|---|---|---|
| I have read three books. | kết quả, số lượng | Đã đọc xong ba quyển. |
| I have been reading all day. | quá trình, độ dài | Có thể vẫn đang đọc. |
| She has written the email. | xong việc | Email đã gửi được. |
| She has been writing emails. | hoạt động kéo dài | Có thể còn dở. |
Ví dụ
I have been learning English since grade 4.Tôi học tiếng Anh từ hồi lớp 4.
She has been waiting for you for an hour.Cô ấy đợi bạn cả tiếng rồi.
It has been raining all morning.Trời mưa suốt cả buổi sáng.
Have you been working in the garden?Bạn vừa làm vườn à?
They haven't been sleeping well lately.Dạo này họ ngủ không ngon.
How long have you been living here?Bạn sống ở đây bao lâu rồi?
Lỗi hay gặp
I have been knowing him for years. → I have known him for years.
know là động từ trạng thái. Cùng nhóm: like, love, hate, want, need, believe, have (sở hữu), belong.
He has been wait for an hour. → He has been waiting for an hour.
Sau been phải là động từ thêm -ing.
I am studying English for two hours. → I have been studying English for two hours.
Việc bắt đầu từ trước và kéo dài đến hiện tại thì dùng have been + V-ing, không dùng hiện tại tiếp diễn.
Mẹo nhớ
Hỏi mình: câu này trả lời “bao lâu” hay “bao nhiêu”? Bao lâu → have been + V-ing. Bao nhiêu → have + V3.
Tóm tắt
- have/has been + V-ing — nhấn vào quá trình kéo dài đến hiện tại.
- Hay đi với for, since, all day, How long…?
- Động từ trạng thái (know, like, have = sở hữu) không dùng dạng này.
Luyện tập bài này
Làm bài tập có giải thích từng câu, mini test và theo dõi tiến độ trên GrammUp.