18 มี.ค. 2022 เวลา 23:24 • การศึกษา
ก่อนหน้านี้เราทำการคำนวณค่าต่างๆ ด้วยการวนลูปแล้วใช้ตัวดำเนินการต่างๆ เช่น + , - ,*, / เพื่อประมวลผลกับcells ต่างๆ ในตาราง Excel
หลายๆคนอาจมีคำถามในใจว่า เอ๋ ? แล้วเราสามารถที่จะใส่สูตรแบบที่เราคุ้นเคยลงไปเลยได้ไหม โดยไม่ต้องมาคอยใส่ตัวดำเนินการต่างๆ เช่น การหาผลรวมจากcolumn ด้านบน อัตโนมัติ
คำตอบคือเป็นไปได้ ครับ แต่เราต้องใช้ตัวช่วยนิดหน่อย ในที่นี้คือ Method ที่เรียกว่า Fomula R1C1
เหมือนทุกๆ ครั้ง เรามาทำตารางสำหรับทดสอบกันก่อน ให้พิมพ์ตารางลงในexcel ตามนี้ได้เลย
ตารางทดสอบ
ต่อมา เราจะทำการรวมผลตั้งแต่ cell B2 ไปจนถึง B7 โดยให้ผลรวมตกลงที่ B8 ซึ่งสามารถเขียนCode ง่ายๆ ดังนี้
code
ก่อนอื่นผมจะกำหนด Range ที่เราต้องการจะนำมาคำนวณในสูตรเสียก่อน ซึ่งใช้คำสั่ง set เพื่อให้ง่ายเวลาเอาไปใส่คุณสมบัติต่างๆ จะได้ทำทีละก้อน อันนี้เป็น option เสริมเท่านั้นนะครับ
ตัวหลักคือ cell B8 ซึ่งเป็น cell อ้างอิง เราจะกำหนดcellนี้ เป็นcell R1C1 โดย R หมายถึง แถว ส่วน C หมายถึงคอลัมน์ หมายเลข 1 คือแถวและคอลัมน์ปัจจุบันตามลำดับ
คำสั่ง Range("B8").FormulaR1C1 = "=SUM(R[-6]C:R[-1]C)" หมายถึง หาผลรวม (sum) ที่ย้อนขึ้นไปด้านบน (ติดลบ) จำนวน 6 แถว ไปจนถึง แถวที่ย้อนไปด้านบน (ติดลบ) อีก 1 แถว โดยอ้างอิงจาก Cell ปัจจุบัน นั้นก็คือ B8 โดยที่ไม่เปลี่ยนแปลงคอลัมน์
คำสั่งอื่นๆ ที่เหลือเป็นเพียงการตกแต่ง cell ต่างๆให้ดูสวยงามตามที่เราต้องการเท่านั้นครับ ไม่เกี่ยวข้องกับการคำนวณแต่อย่างใด
เมื่อเรากด F5 หรือเครื่องหมาย ลูกศร ก็จะได้ผลลัพธ์ดังนี้
result
จบแล้ว

ดูเพิ่มเติมในซีรีส์

โฆษณา