Page 1 of 1
การใส่สูตร ด้วย VBA
Posted: Sat Mar 15, 2014 11:04 am
by san02551
เรียนอาจารย์ที่เคารพ
ตอนนี้ ผมทำเอกสารแบบ ปพ.นักเรียนอยู่ มีปัญหาตรงที่
1.ครูชอบลบสูตร ที่มีอยู่ในเซลล์
2.ครูชอบ คัดลอก และวางทับสูตร
มี ผลทำให้ไม่ได้ผลตามที่ต้องการ
ผมเลยคิดว่า มีวิธีการที่จะนำสูตรไปเขียนเป็นโค้ด ได้ไหมครับ
ตัวอย่าง ตาม ไฟล์แนบครับ
Re: การใส่สูตร ด้วย VBA
Posted: Sat Mar 15, 2014 11:07 am
by snasui
san02551 wrote:เรียนอาจารย์ที่เคารพ

โพสต์ได้เลยไม่ต้องเรียนท่านใดครับ เพราะจะทำให้สมาชิกท่านอื่นที่ทราบไม่สะดวกใจที่จะตอบ ช่วยแก้ไขข้อความด้วยครับ
Re: การใส่สูตร ด้วย VBA
Posted: Sat Mar 15, 2014 12:17 pm
by san02551
จากไฟล์ที่แนบมาด้วย ผมต้องการ บวก เซลล์ b3+c3 แสดงผลบวก ที่ d 3
โดยการเขียนโค้ด vba
Re: การใส่สูตร ด้วย VBA
Posted: Sat Mar 15, 2014 12:26 pm
by snasui

ตัวอย่าง Code ครับ
Code: Select all
Sub Macro3()
' Macro3 áÁâ¤Ã
For Each r In Range("d3:d11")
r.Value = r.Offset(0, -2) + r.Offset(0, -1)
Next r
End Sub
Re: การใส่สูตร ด้วย VBA
Posted: Sat Mar 15, 2014 1:30 pm
by san02551
ทำความเข้าใจ โค้ด
ถ้าต้องการ ลบ เปลี่ยนเป็น r.Value = r.Offset(0,2)-r.Offset(0,1) ใช่ไหมครับ
Next r
---------------------------------------------------------------
ถ้าต้องการรวม ข้อมูล sum r.Value = r.Offset(a11:c11)
Next r
------------------------------------------------------------
ถ้าต้องตัดเกรด คำสั่ง IF ครับ
=IF(W4<49,"0",IF(W4<=54,"1",IF(W4<=59,"1.5",IF(W4<=64,"2",IF(W4<=69,"2.5",IF(W4<=74,"3",IF(W4<=79,"3.5",IF(W4>=80,"4"))))))))
Re: การใส่สูตร ด้วย VBA
Posted: Sat Mar 15, 2014 2:14 pm
by snasui
snasui wrote:ทำความเข้าใจ โค้ด
ถ้าต้องการ ลบ เปลี่ยนเป็น r.Value = r.Offset(0,2)-r.Offset(0,1) ใช่ไหมครับ
Next r
การลบกันก็เหมือนการบวกแต่เปลี่ยนเครื่องหมายบวกเป็นลบถูกแล้ว สำหรับ Code นี้ต้องคำนึงว่าใช้ค่าใดเป็นตัวตั้งด้วยครับ
snasui wrote:ถ้าต้องการรวม ข้อมูล sum r.Value = r.Offset(a11:c11)
Next r
ไม่ใช่ครับ
snasui wrote:ถ้าต้องตัดเกรด คำสั่ง IF ครับ
=IF(W4<49,"0",IF(W4<=54,"1",IF(W4<=59,"1.5",IF(W4<=64,"2",IF(W4<=69,"2.5",IF(W4<=74,"3",IF(W4<=79,"3.5",IF(W4>=80,"4"))))))))
ไม่ใช่ครับ
การให้แสดงผลลัพธ์เป็นตัวเลข จะต้องไม่ครอบผลลัพธ์ด้วยเครื่องหมายฟันหนู
ควรจะสรุปในประเด็นที่ถาม ไม่ควรนำเรื่องที่ไม่เกี่ยวข้องมาสรุป ผู้ตอบจะได้เห็นว่าต้นเรื่องมีมาอย่างไร จะได้ช่วยสรุปให้ได้