ในการทำรายงานผ่านทาง Excel บางครั้งเราก็ต้องมีการนำเข้ารูปภาพ เพื่อมาแทรกใน Cell ที่เราต้องการ เพื่อให้คนดูรายงาน สามารถเข้าใจรายละเอียดได้ชัดเจนยิ่งขึ้น
วันนี้ก็จะนำเสนอวิธีการ ปรับขนาดรูปภาพให้พอดีกับ Cell โดยใช้ VBA เข้าช่วย และการ Filter รูปภาพกันนะครับ
กับ Code ไม่กี่บรรทัด ก็สามารถทำให้งานเราง่ายขึ้นได้ มาดูวิธีการกันเลย
ลำดับแรก ควรจะเตรียมตารางและปรับขนาด Cell สำหรับใส่รูปภาพเอาไว้ และนำเข้ารูปภาพที่ต้องการแทรกในรายงาน เข้ามา
จากนั้น เหมือนเดิม คือ เข้าไปที่แท๊บ "Develop" แล้วเลือก "View code" ก็จะได้หน้าต่าง VBA ขึ้นมา
จากนั้นให้เพิ่ม Code ด้านล่างนี้ลงไป
Sub resizePicture()
Selection.Placement = xlMoveAndSize
With Selection.ShapeRange
.LockAspectRatio = msoFalse
.Top = ActiveCell.Top
.Left = ActiveCell.Left
.Height = ActiveCell.Height
.Width = ActiveCell.Width
End With
End Sub
ก็เป็นอันเสร็จเรียบร้อย
มาดูวิธีใช้งานกัน
ก่อนอื่นให้คลิกเลือก Cell ที่ต้องการแทรกรูปลงไป
จากนั้นทำการเลือกรูปที่ต้องการ แทรกลงใน Cell นั้น (ซึ่งตอนนี้เราได้ทำการ import เข้ามาไว้ก่อนแล้ว)
จากนั้นทำการ Run macro ที่เราได้สร้าง โดยการไปที่แท๊บ "Develop>Macros" หรือกด Alt+F8 ก็ได้
ก็จะได้หน้าต่าง "Macro" ขึ้นมา
ให้เลือก Macro ที่เราได้สร้างไว้ ในที่นี้เป็น Macro ชื่อ "resizePicture" แล้วคลิก Run
รูปภาพที่เราได้เลือกไว้ก็จะถูกย้าย และปรับให้พอดีกับขนาดของ Cell เรียบร้อย
หากต้องการเรียกใช้ Macro ให้ง่ายกว่านี้ เราสามารถ เพิ่ม shortcut ให้กับ Macro ได้โดย
เปิดแท๊บ Macro ขึ้นมา
จากนั้นเลือก Macro ที่ต้องการเพิ่ม Shortcut
เลือก "Options.."
จากนั้นป้อนอักษรที่ต้องการสร้างเป็น shortcut ได้เลย
วิธีการเรียกใช้ ก็ทำการกด shortcut แทนการเปิดหน้าต่าง Macro ได้เลยครับ
เมื่อจัดทำ Report เรียบร้อยแล้ว ก็สามารถทำการ Filter ตามปรกติได้เลย
เมื่อทดลองเลือก Filter Group "B"
นอกจากนั้น หากเราปรับขนาด Cell รูปภาพ ก็จะเปลี่ยนขนาดตามที่เราได้ปรับด้วย
ก็ลองเอาไปประยุกต์ใช้กันดูครับ