Hiện tại hoàn thành tiếp diễn (Present perfect continuous)

Trình độ B1–B2 · Động từ · 5 câu mini quiz · bài kiểm tra 30 câu

Hiện tại hoàn thành tiếp diễn (còn gọi là present perfect progressive) dùng HAI trợ động từ cùng một động từ chính: have / has + been + V-ing. Như tên gọi, thì này thường có mối liên hệ với HIỆN TẠI. Ta dùng nó cho hai việc: một hành động bắt đầu trong quá khứ và VỪA MỚI dừng, để lại kết quả bây giờ (I’m tired because I’ve been running); và một hành động bắt đầu trong quá khứ và VẪN ĐANG tiếp diễn, thường kèm for hoặc since (I’ve been reading for two hours).

Công thức theo ngôi

Chủ ngữhave/has beenV-ingVí dụ
Ihave beenwaitingI have been waiting for an hour.
Youhave beenwaitingYou have been waiting for an hour.
Hehas beenwaitingHe has been waiting for an hour.
Shehas beenwaitingShe has been waiting for an hour.
Ithas beenwaitingIt has been raining for an hour.
Wehave beenwaitingWe have been waiting for an hour.
Youhave beenwaitingYou have been waiting for an hour.
Theyhave beenwaitingThey have been waiting for an hour.

Hai cách dùng

Cách dùngVí dụBây giờ
Việc vừa dừng, còn kết quảI’m tired because I’ve been running.đã dừng chạy, nhưng đang mệt
Việc vừa dừng, còn kết quảThe floor is wet. Has it been raining?đã tạnh, nhưng sàn ướt
Bắt đầu từ trước, vẫn đang tiếp diễnI’ve been reading for two hours.vẫn đang đọc
Bắt đầu từ trước, vẫn đang tiếp diễnWe’ve been studying since 8 o’clock.vẫn đang học

Ba phần của thì: have + been + V-ing

Kiểu câuCông thứcVí dụ
+ Khẳng địnhS + have / has + been + V-ingShe’s been working all day.
– Phủ địnhS + have / has + not + been + V-ingShe hasn’t been working today.
? Nghi vấnHave / Has + S + been + V-ingHas she been working all day?

Chỉ trợ động từ đầu (have / has) đổi theo chủ ngữ; been và V-ing giữ nguyên.

Quá trình hay kết quả?

HTHT tiếp diễn — quá trìnhHTHT — kết quảKhác nhau
I’ve been painting the room.I’ve painted the room.Có thể chưa xong ↔ đã sơn xong
She’s been reading for hours.She’s read three chapters.Đọc bao lâu ↔ đọc được bao nhiêu
It’s been raining all day.It’s rained twice this week.Kéo dài liên tục ↔ đếm số lần

Khi nói “bao lâu” ⇒ thường dùng HTHT tiếp diễn; khi nói “bao nhiêu / mấy lần” ⇒ dùng HTHT.

Chủ ngữ + have / has + been + V-ing

Trợ động từ thứ nhất have chia theo chủ ngữ (have, has); trợ động từ thứ hai be luôn ở dạng been; động từ chính luôn ở dạng V-ing. Phủ định: thêm not SAU trợ động từ thứ nhất. Câu hỏi: đảo trợ động từ thứ nhất lên trước chủ ngữ.

  • It hasn’t been raining today. — Hôm nay trời không mưa.
  • Have they been doing their homework? — Bọn trẻ có đang làm bài tập không đấy?

Viết tắt khi nói

Chủ ngữ + have được viết tắt: I’ve been, she’s been, they’ve been, Lan’s been… Phủ định: haven’t been, hasn’t been.

  • Minh’s been helping us a lot recently. — Dạo này Minh giúp chúng tôi rất nhiều.
  • I haven’t been sleeping well. — Dạo này tôi ngủ không ngon.

Cách dùng 1 — Việc vừa dừng, để lại kết quả bây giờ

Hành động bắt đầu trong quá khứ và vừa mới dừng; thường có một kết quả nhìn thấy hoặc cảm thấy ĐƯỢC BÂY GIỜ.

  • I’m out of breath because I’ve been running. — Tôi thở không ra hơi vì vừa chạy xong.
  • Why is the floor wet? Has it been raining? — Sao sàn ướt thế? Trời vừa mưa à?
  • You don’t understand because you haven’t been listening. — Bạn không hiểu vì nãy giờ bạn không chịu nghe.

Cách dùng 2 — Việc bắt đầu từ quá khứ và vẫn đang tiếp diễn

Hành động bắt đầu trong quá khứ và VẪN đang diễn ra bây giờ; cách dùng này thường đi với for, since, how long.

  • I’ve been reading for two hours. — Tôi đọc được hai tiếng rồi. (vẫn đang đọc)
  • We’ve been studying since 8 o’clock. — Chúng tôi học từ tám giờ tới giờ. (vẫn đang học)
  • How long have you been learning English? — Bạn học tiếng Anh được bao lâu rồi?

for và since

for + khoảng thời gian (three hours, two months), since + mốc trong quá khứ (7 pm, Friday, I left school) — xem bài for và since.

  • She hasn’t been feeling well for two weeks. — Hai tuần nay cô ấy thấy không khoẻ.
  • He’s been living in Hue since he left school. — Từ hồi ra trường anh ấy sống ở Huế.

Quá trình (have been doing) hay kết quả (have done)

Dạng tiếp diễn nói về VIỆC LÀM: xong hay chưa không quan trọng, ta nhìn vào dấu vết mà nó để lại. Dạng đơn nói về KẾT QUẢ: việc đã hoàn tất và ta nhìn vào thành phẩm.

  • My hands are very dirty. I’ve been repairing my bike. — Tay tôi bẩn lắm. Nãy giờ tôi sửa xe đạp.
  • My bike is OK again now. I’ve repaired it. — Xe đạp tôi chạy lại được rồi. Tôi sửa xong rồi.
  • Joe has been eating too much recently. He should eat less. — Dạo này Joe ăn nhiều quá. Cậu ấy nên ăn ít lại.
  • Somebody has eaten all the chocolates. The box is empty. — Có ai ăn hết sạch sô-cô-la rồi. Hộp rỗng không.

how long dùng tiếp diễn; how many / how much dùng đơn

Hỏi việc đã kéo dài BAO LÂU (và vẫn đang tiếp tục) ⇒ dạng tiếp diễn. Hỏi ĐƯỢC BAO NHIÊU, BAO NHIÊU LẦN (những phần đã làm xong) ⇒ dạng đơn.

  • How long have you been reading that book? — Bạn đọc cuốn sách đó bao lâu rồi?
  • How many pages have you read? — Bạn đọc được bao nhiêu trang rồi?
  • They’ve been playing tennis since 2 o’clock. — Họ chơi quần vợt từ hai giờ tới giờ.
  • They’ve played tennis three times this week. — Tuần này họ chơi quần vợt ba lần rồi.

I am doing và I have been doing

Hiện tại tiếp diễn chỉ nói việc ĐANG xảy ra lúc này, không cho biết nó bắt đầu từ bao giờ. Hiện tại hoàn thành tiếp diễn thì nhìn ngược từ bây giờ về trước: việc đã kéo dài một quãng cho tới tận giờ.

  • Don’t disturb me now. I’m working. — Đừng làm phiền, tôi đang làm việc.
  • I’ve been working hard. Now I’m going to have a break. — Nãy giờ tôi làm việc căng lắm. Giờ tôi nghỉ một lát.
  • We need an umbrella. It’s raining. — Phải mang ô thôi. Trời đang mưa.
  • The ground is wet. It’s been raining. — Mặt đất ướt. Trời vừa mưa xong.

Lưu ý

  • Hãy so sánh: “I’ve been painting the room” (quá trình, có thể chưa xong) và “I’ve painted the room” (đã xong).
  • Không dùng thì này với động từ trạng thái: “I’ve known him for years”, không phải “I’ve been knowing”. Riêng want và mean thì dùng được: “I’ve been meaning to phone Anna.”
  • Thì này còn dùng cho việc lặp đi lặp lại suốt một quãng thời gian: “She’s been playing tennis since she was eight.”
  • Riêng live và work thì dùng dạng nào cũng được: “Julia has been living / has lived here for a long time.” Nhưng có always thì phải dùng dạng đơn: “I’ve always lived in the country”, không nói “always been living”.

Bài khác trong chuyên mục Động từ