โซโลพรีเนอร์
AI & System
Focus
ชุมชน
เรื่องราวของผม
North Star OS
ทักมาเลย
อ่านใน:
กลับไปหน้า English Archive
FREE🟡 Intermediate ⏱ อ่าน 12 นาที

Present Perfect Continuous
have/has been + -ing

เน้นกระบวนการและระยะเวลา ไม่ใช่แค่ผลลัพธ์ — ต่างจาก Present Perfect ตรงนี้


Present Perfect Continuous เน้นว่า กำลังทำมาอย่างต่อเนื่อง ตั้งแต่อดีตจนถึงตอนนี้ — บางครั้งยังไม่เสร็จ บางครั้งเพิ่งหยุดแต่ผลยังเห็นอยู่

โครงสร้าง

I/You/We/They → have been + V-ing

He/She/It → has been + V-ing

รูปแบบตัวอย่าง
บวกI have been working all day. / She has been studying for 3 hours.
ปฏิเสธHe hasn't been sleeping well lately.
คำถามHave you been waiting long? / Has she been crying?

3 การใช้งานหลัก

1. กิจกรรมต่อเนื่องมาจนถึงตอนนี้ (ยังทำอยู่หรือเพิ่งหยุด)

I have been learning English for 2 years. (เรียนมา 2 ปีแล้ว)

She has been working here since 2019. (ทำงานมาตั้งแต่ปี 2019)

We have been waiting for an hour! (รอมาชั่วโมงแล้ว)

2. เพิ่งหยุดทำ — เห็นร่องรอย/ผลที่ยังอยู่

Your eyes are red. Have you been crying? (ตาแดง = ร่องรอย)

He's sweaty. He has been running. (เหงื่อออก = ร่องรอย)

The road is wet. It has been raining. (ถนนเปียก = ร่องรอย)

3. บอกว่าทำอะไรมาตลอดเวลาที่ผ่านมา (recently)

I have been thinking about you. (คิดถึงนะ)

What have you been doing lately? (ช่วงนี้ทำอะไรอยู่?)

Present Perfect vs Present Perfect Continuous

Present Perfect
เน้น ผลลัพธ์ / จำนวนครั้ง

"I have written 3 reports." (เสร็จแล้ว 3 ฉบับ)
"She has read that book." (อ่านจบแล้ว)
ใช้กับจำนวน: 3 times, 5 emails
Present Perfect Continuous
เน้น กระบวนการ / ระยะเวลา

"I have been writing reports all day." (ทำมาตลอด ยังไม่เสร็จ)
"She has been reading for hours." (อ่านมาหลายชั่วโมง)
ใช้กับ: for / since / how long / all day

I have painted two rooms. ✓ (เสร็จแล้ว 2 ห้อง — ผลลัพธ์)

I have been painting all morning. ✓ (ทาสีมาตลอดเช้า — กระบวนการ)

for vs since — บอกระยะเวลา

for + ช่วงเวลา (ความยาว) → for 2 hours, for 3 years, for a week

since + จุดเริ่มต้น (เริ่มเมื่อไหร่) → since 2019, since Monday, since 9 am

I have been working here for 5 years. (นาน 5 ปี)

I have been working here since 2021. (ตั้งแต่ปี 2021)

She has been studying for two hours. (มา 2 ชั่วโมง)

She has been studying since lunch. (ตั้งแต่มื้อเที่ยง)

หมายเหตุ: กับ live / work / study เมื่อพูดถึงระยะเวลา เรามักใช้ Present Perfect หรือ Present Perfect Continuous ได้ทั้งคู่ ความหมายแทบไม่ต่างกัน → "I have lived here for 5 years." = "I have been living here for 5 years."

ข้อผิดพลาดที่คนไทยทำบ่อย

"I have been knowing him for years." → I have known him for years. (know = stative verb ใช้ continuous ไม่ได้)

"She has been eaten." → She has been eating. (ต้องใช้ V-ing ไม่ใช่ V3)

"How long have you been wait?" → How long have you been waiting?

ลองฝึก

1. She ___ (study) for 5 hours. She looks tired.

2. Your hands are dirty. What ___ you ___ (do)?

3. I ___ (read) this book for a week. (ยังไม่เสร็จ)

4. I ___ (read) 3 books this month. (เสร็จแล้ว 3 เล่ม)

ดูเฉลย

1. has been studying · 2. have / been doing · 3. have been reading · 4. have read

สรุป
  • โครงสร้าง: have/has been + V-ing
  • เน้น: กระบวนการต่อเนื่อง · ระยะเวลา · ร่องรอยที่เพิ่งเกิด
  • Present Perfect = ผลลัพธ์ / จำนวน · Present Perfect Continuous = กระบวนการ / ระยะเวลา
  • Stative verbs (know, love, want, believe) ใช้ continuous ไม่ได้
  • คำบ่งชี้: for / since / how long / all day / lately / recently

มีคำถามหรืออยากฝึกเพิ่ม?

เข้ามาถามใน #english channel ได้เลย

เข้า Simply Dock ฟรี