ซ่อมคอมพิวเตอร์นอกสถานที่ บางกะปิ รามคำแหง

วันอาทิตย์ที่ 2 มีนาคม พ.ศ. 2557

การตั้งชื่อช่วงข้อมูลแบบคงที่ (Static range name)

จากที่เคยกล่าวถึงมาแล้วในเรื่อง การสร้างรายการเลือก (List) เพื่อช่วยเติมข้อมูล ว่า "...ในกรณีที่ Source ข้อมูลอยู่คนละชีทกัน จะต้องทำการตั้งชื่อช่วง Source นั้นๆ ก่อน แล้วจึงเอาชื่อนั้นมาใช้งาน..." จึงมีคำถามตามมาว่า แล้วการตั้งชื่อทำอย่างไร?


รูปที่ 1 การตั้งชื่อช่วงข้อมูลแบบง่าย


วิธีการตั้งชื่อช่วงข้อมูลแบบคงที่ (Static) สามารถทำได้หลายแบบ แต่วิธีที่ง่ายและสะดวกก็คือ ทำการเลือกช่วงข้อมูลที่ต้องการ แล้วพิมพ์ชื่อลงในช่อง Name Box ซึ่งจากตัวอย่างในรูปที่ 1 ให้เลือกช่วงข้อมูล A6:A12 แล้วพิมพ์ชื่อลงในช่อง Name Box ว่า List_IDเสร็จแล้วก็กด Enter

เมื่อต้องการสร้างรายการเลือกให้กับเซลล์ใดๆ ก็ทำตามวิธีการเช่นเดียวกับที่กล่าวมาแล้วในเรื่อง การสร้างรายการเลือก (List) เพื่อช่วยเติมข้อมูล เพียงแต่ในขั้นตอนที่จะต้องระบุช่วงข้อมูลในช่อง Source จากเดิมที่อ้างอิงไปยังช่วงเซลล์ ให้เปลี่ยนเป็น =List_IDดังรูป


รูปที่ 2 การสร้างรายการเลือกโดยอ้างอิงไปยังชื่อข้อมูลที่ตั้งไว้


สำหรับการใช้ฟังก์ชัน VLOOKUP ดึงข้อมูลมาแสดงนั้น กรณีที่เป็นการอ้างอิงฐานข้อมูลที่อยู่คนละชีทกัน จะต้องใส่ชื่อชีทกำกับช่วงข้อมูลด้วย เช่น ถ้าชีทที่เป็นฐานข้อมูลมีชื่อว่า Sheet2 การแสดงชื่อที่เซลล์ L7 ของชีทที่เป็นผลลัพธ์จะต้องแก้ไขสูตรใหม่ ดังนี้

=VLOOKUP( L$5, Sheet2!$A$5:$E$12, 3, 0 )

หรือการแสดงนามสกุลที่เซลล์ L8 ก็เช่นกัน ต้องแก้ไขสูตรดังนี้

=VLOOKUP( L$5, Sheet2!$A$5:$E$12, 4, 0 )

แต่ถ้าเราทำการตั้งชื่อให้กับช่วงข้อมูล $A$5:$E$12 ซึ่งอยู่ในชีทที่ชื่อว่า Sheet2 และนำชื่อดังกล่าวไปแทนในสูตรก็สามารถทำได้ ซึ่งจากตัวอย่างในรูปที่ 3 ให้เลือกช่วงข้อมูล A5:E12 แล้วพิมพ์ชื่อลงในช่อง Name Box ว่า DB_Emp เสร็จแล้วก็กด Enter



รูปที่ 3 การตั้งชื่อช่วงข้อมูล A5:E12 โดยใช้ Name Box


เมื่อทำการตั้งชื่อให้กับช่วงข้อมูล $A$5:$E$12 ว่า DB_Emp แล้ว ก็ให้ใช้ชื่อดังกล่าวแทนค่าลงในทุกสูตรที่มีการอ้างถึงช่วงข้อมูล $A$5:$E$12 เช่นในเซลล์ L7 จากสูตรเดิม =VLOOKUP(L$5, $A$5:$E$12, 3, 0) หรือถ้าอยู่คนละชีท สูตรก็จะเป็น =VLOOKUP(L$5, Sheet2!$A$5:$E$12, 3, 0) นั้น ให้แก้ไขสูตรเป็น =VLOOKUP(L$5, DB_Emp, 3, 0) ดังรูปที่ 4 ซึ่งนอกจากจะแสดงผลได้ถูกต้องเหมือนเดิมแล้ว ยังช่วยให้สูตรที่ใช้สั้นลงอีกด้วย


รูปที่ 4 การในชื่อช่วงข้อมูล (range name) แทนค่าลงในสูตร


การตั้งชื่อช่วงข้อมูลดังที่กล่าวมาข้างต้น เป็นลักษณะของการตั้งชื่อแบบคงที่ (Static) แต่ในกรณีที่มีข้อมูลเพิ่มขึ้น หรือลดลง และต้องการให้ช่วงที่เราตั้งชื่อนั้น เปลี่ยนแปลงไปตามขนาดของข้อมูลที่เพิ่มหรือลดนั้นๆ ต้องใช้วิธีการตั้งชื่อแบบยืดหยุ่น (Dynamic range name) ซึ่งจะได้กล่าวถึงในโอกาสต่อไป

0 ความคิดเห็น:

แสดงความคิดเห็น