1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
การใช้ VLOOKUP เพื่อแสดงข้อมูลจากฐานข้อมูล ตอนที่1
มีหลายท่านที่ได้สอบถามเข้ามา และให้ช่วยอธิบายการใช้ฟังก์ชัน VLOOKUP เพื่อแสดงข้อมูลจากฐานข้อมูลให้ด้วย วันนี้พอจะมีเวลา ก็ขอเขียนเรื่องนี้ก็แล้วกันครับ VLOOKUP เป็นอีกฟังก์ชันหนึ่งของ Excel ที่มีการนำไปใช้งานค่อนข้างมาก โดยเฉพาะการแสดงข้อมูลจากฐานข้อมูล ที่มีความสะดวกและรวดเร็ว เพียงแค่เราป้อนรหัส หรือโค๊ดที่ใช้ในการอ้างอิงถึงข้อมูลนั้นๆ เช่น แค่ป้อนรหัสพนักงาน ก็สามารถแสดงข้อมูลต่างๆ ของพนักงานคนนั้นๆ ออกมาได้ในทันที รวมถึงแสดงรูปภาพของพนักงานได้ด้วย (ซึ่งจะกล่าวถึงวิธีการแสดงรูปในโอกาสต่อไป)โครงสร้างของฟังก์ชัน VLOOKUP VLOOKUP( lookup_value, table_array, col_index_num, range_lookup) lookup_value หรือค่าที่เราจะใช้ค้นหา โดยที่ค่าดังกล่าวนี้ จะต้องมีอยู่ในคอลัมน์แรกของตารางฐานข้อมูล เช่น รหัสพนักงาน รหัสสินค้า เป็นต้นtable_array หรือช่วงตารางฐานข้อมูล ที่มีจำนวนคอลัมน์ข้อมูลอย่างน้อยสองคอลัมน์หรือมากกว่า ดังรูปที่ 1col_index_num หรือหมายเลขระบุคอลัมน์ในตารางฐานข้อมูล ที่คุณต้องการจะนำข้อมูลในคอลัมน์นั้นออกมาแสดงrange_lookup เป็นค่าตรรกะที่ระบุว่า ต้องการให้ VLOOKUP ค้นหารหัสที่ตรงกันกับที่ระบุเท่านั้นหรือไม่ โดยที่
ถ้ากำหนดเป็น TRUE หรือ 1 หรือไม่ใส่ค่าอะไรเลย ในกรณีที่ไม่พบรหัสที่ตรงกัน จะแสดงข้อมูลของรหัสที่ใกล้เคียงที่สุดซึ่งน้อยกว่าค่า lookup_value (ทั้งนี้ค่าในคอลัมน์แรกของช่วงตารางฐานข้อมูล จะต้องเรียงตามลำดับจากน้อยไปหามาก) แต่ถ้ากำหนดเป็น FALSE หรือ 0 (ศูนย์) VLOOKUP จะทำการค้นหาเฉพาะรหัสที่ระบุเท่านั้น ซึ่งถ้าไม่พบก็จะแสดงค่าผิดพลาด #N/A (ในกรณีนี้ ค่าในคอลัมน์แรกของช่วงตารางฐานข้อมูลไม่จำเป็นต้องเรียงลำดับ) แต่ถ้าหากพบรหัสที่ระบุ ที่มีค่าเหมือนกันมากกว่าหนึ่งรายการในคอลัมน์แรกของช่วงตารางฐานข้อมูล VLOOKUP จะใช้ค่าแรกที่พบก่อน รูปที่ 1 ตัวอย่างตารางฐานข้อมูล สร้างตารางฐานข้อมูล ในการใช้ VLOOKUP เราจำเป็นต้องมีตารางฐานข้อมูลอย่างน้อย 1 ตาราง (อาจจะมีมากกว่า 1 ตารางที่สัมพันธ์กันก็ได้ ซึ่งจะกล่าวถึงต่อไป) ซึ่งมีลักษณะดังรูปที่ 1 คุณต้องการเก็บข้อมูลอะไร จะมีกี่คอลัมน์ ก็สุดแล้วแต่ มีข้อแม้เพียงว่า ต้องอยู่ในรายละเอียดและเงื่อนไขของ การออกแบบตารางฐานข้อมูลใน Excel (หาอ่านได้จากหนังสือ Excel for HR ในบทที่ 21 ครับ) จากรูปที่ 1 ผมจงใจให้ข้อมูลเริ่มต้นที่ คอลัมน์ B โดยตารางฐานข้อมูลนี้มี 5 คอลัมน์ คือ รหัส, คำนำหน้า, ชื่อ, นามสกุล และหน่วยงาน ดังนั้น ถ้าเราค้นหาเจอรหัสของใคร และต้องการนำชื่อคนนั้นมาแสดง ก็หมายถึง คอลัมน์ที่ 3 (แม้ว่าข้อมูลจะอยู่ในคอลัมน์ D ก็ตาม)สร้างรูปแบบข้อมูลผลลัพธ์ (Output) เราสามารถออกแบบหน้าตาของผลลัพธ์ หรือ Output ที่ต้องการได้ โดยการจัดวางองค์ประกอบ หรือโครงสร้างของผลลัพธ์นั้นตามความเหมาะสม โดยพิจารณาจากข้อมูลในตารางฐานข้อมูล ข้อมูลผลลัพธ์นั้น จะอยู่ในชีตเดียวกันกับตารางฐานข้อมูล หรือจะอยู่คนละชีต หรือคนละไฟล์ก็ได้ แล้วแต่ลักษณะการใช้งาน แต่ในที่นี้ผมขอนำมาไว้ในชีตเดียวกัน เพื่อสะดวกในการทำภาพประกอบรูปที่ 2 ตัวอย่างข้อมูลผลลัพธ์ หรือ Output 1. จากรูปที่ 2 ผมทำการออกแบบข้อมูลผลลัพธ์แบบง่ายๆ โดยการใช้เมาท์เลือกช่วงข้อมูล B2:F2 แล้วคลิกขวาเลือก Copy 2. ผมคลิกเมาท์ปุ่มขวาที่ตำแหน่ง J4 แล้วเลือก Paste special... 3. ติ๊กเลือก Transpose แล้วคลิก OK 4. ทำการตกแต่งรูปแบบสักหน่อย เช่น จัดข้อความชิดขวา และเพิ่มข้อความด้านบน ดังที่แสดงในรูปที่ 2รูปที่ 3 ติ๊กเลือก Transpose แล้วคลิก OK การแสดงข้อมูลจากฐานข้อมูล จากรูปแบบผลลัพธ์ในรูปที่ 2 ถ้าเราป้อนรหัสพนักงานที่ K4 เราก็ต้องการให้คำนำหน้า, ชื่อ, นามสกุล และแผนก มาโชว์ใน K5 ถึง K8 ตามลำดับ โดยอัตโนมัติ เรามาทดลองทำตามไปพร้อมๆ กันเลยดีกว่าครับ 1. ป้อนรหัสพนักงานคนใดคนหนึ่งที่เซล K4 2. ที่เซล K5 พิมพ์ =VLOOKUP(K$4,$B$3:$F$10,2,0) 3. ทำการคัดลอกสูตรจาก K5 มาที่ K6:K8 (ซึ่งจะเห็นว่าแสดงผลเป็นคำนำหน้าเหมือนกันหมด) 4. ดับเบิลคลิกที่ K6 (หรือเลื่อนเซลมาที่ K6 แล้วกด F2) เปลี่ยนเลข 2 เป็นเลข 3 5. ดับเบิลคลิกที่ K7 เปลี่ยนเลข 2 เป็นเลข 4 6. ดับเบิลคลิกที่ K8 เปลี่ยนเลข 2 เป็นเลข 5 จะได้ผลลัพธ์ดังรูปที่ 4รูปที่ 4 ตัวอย่างผลลัพธ์ที่ได้หลังจากใช้ VLOOKUP การเชื่อมโยงข้อมูลจากฐานข้อมูลมากกว่า 1 ตาราง จากตัวอย่างที่กล่าวมา เป็นการแสดงข้อมูลที่มาจากฐานข้อมูลเพียงตารางเดียว ดังนั้นจากผลลัพธ์ที่ได้ หากเราสงสัยว่า เราจะรู้ได้อย่างไรว่า รหัสหน่วยงานที่แสดงออกมานั้น จริงๆ แล้วมีชื่อเต็มว่าอะไร เราจึงอยากที่จะให้แสดงชื่อเต็ม เพราะเข้าใจง่ายกว่า ในที่นี้เราจะทำการสร้างฐานข้อมูลขึ้นมาอีก 1 ตาราง เป็นรายชื่อของหน่วยงานต่างๆ โดยมีรหัสหน่วยงานเป็นตัวเชื่อมโยง ดังนั้น ผมจึงเพิ่มข้อมูลอีกตารางหนึ่ง ดังรูปที่ 5รูปที่ 5 ตัวอย่างตารางข้อมูลหน่วยงาน หลังจากที่เรามีตารางฐานข้อมูลดังรูปที่ 5 แล้ว เราจะต้องทำการแก้ไขสูตรในเซล K8 เสียใหม่ เพื่อให้แสดงชื่อเต็มของหน่วยงาน ดังนี้=VLOOKUP(VLOOKUP(K$4,$B$3:$F$10,5,0) ,B16:C21,2,0) เป็นการทำ VLOOKUP ซ้อน VLOOKUP โดยการนำผลลัพธ์ที่ได้จาก VLOOKUP ครั้งแรก มาเป็น lookup_value ของการ VLOOKUP ครั้งที่สอง ที่ไปค้นหาจากตารางฐานข้อมูลอันใหม่ ทำให้ได้ผลลัพธ์เป็นชื่อหน่วยงาน ดังรูปที่ 6รูปที่ 6 ตัวอย่างผลลัพธ์ที่แสดงชื่อเต็มหน่วยงาน ติดตามเทคนิคอื่นๆ เกี่ยวกับ VLOOKUP ในตอนต่อไป
Create Date : 02 พฤษภาคม 2551
27 comments
Last Update : 30 มกราคม 2552 21:43:11 น.
Counter : 68564 Pageviews.
โดย: ...... IP: 203.155.227.91 5 มิถุนายน 2551 17:26:39 น.
โดย: ครูเอก 5 มิถุนายน 2551 21:29:52 น.
โดย: creamini IP: 164.144.232.10 26 มิถุนายน 2551 15:37:36 น.
โดย: John13 IP: 61.245.57.135 29 มิถุนายน 2551 1:56:11 น.
โดย: วิโรจน์ IP: 125.25.103.49 24 กรกฎาคม 2551 16:15:46 น.
โดย: รัก IP: 202.91.19.206 2 สิงหาคม 2551 21:38:52 น.
โดย: ครูเอก 2 สิงหาคม 2551 23:44:51 น.
โดย: PIM IP: 124.121.169.110 21 ตุลาคม 2551 21:28:44 น.
โดย: เอชอาร์มือใหม่ (buu) IP: 58.10.170.75 3 พฤศจิกายน 2551 19:38:06 น.
โดย: PO IP: 58.9.4.72 21 พฤศจิกายน 2551 11:16:25 น.
โดย: เทเรซา IP: 58.8.180.206 29 มกราคม 2552 7:22:54 น.
โดย: ปอน IP: 58.8.133.164 18 กุมภาพันธ์ 2552 19:12:44 น.
โดย: นัท IP: 203.146.194.246 26 กุมภาพันธ์ 2552 15:47:27 น.
โดย: มือใหม่ IP: 223.206.101.153 20 มกราคม 2554 3:26:24 น.
โดย: วัน IP: 118.175.183.143 13 พฤษภาคม 2554 15:53:00 น.
โดย: กวาง IP: 118.175.32.174 30 พฤษภาคม 2554 14:51:17 น.
โดย: แอ๋ม IP: 58.10.167.197 16 มิถุนายน 2554 15:51:38 น.
โดย: wedge IP: 10.0.1.36, 110.77.234.234 25 สิงหาคม 2554 19:20:33 น.
โดย: manee IP: 180.183.92.200 30 พฤศจิกายน 2554 14:57:24 น.
โดย: เสี่ยวยี่ IP: 118.172.0.40 4 มีนาคม 2556 23:05:58 น.
โดย: น้องใหม่ครับ IP: 101.109.159.20 29 มีนาคม 2556 10:35:41 น.
โดย: jittima IP: 27.130.239.109 12 เมษายน 2556 15:43:23 น.
โดย: ผู้เริ่มต้น IP: 182.52.116.203 25 กรกฎาคม 2556 8:49:43 น.
โดย: แอบดู IP: 125.24.255.68 26 พฤศจิกายน 2556 8:42:17 น.
โดย: ttr IP: 124.121.233.176 9 กุมภาพันธ์ 2557 6:16:25 น.
โดย: หมู IP: 124.120.91.215 1 เมษายน 2557 18:42:29 น.
โดย: น้องใหม่ขี้สงสัย IP: 124.122.37.28 13 กรกฎาคม 2558 14:27:17 น.
Location :
กรุงเทพฯ Thailand
[ดู Profile ทั้งหมด]
ฝากข้อความหลังไมค์
Rss Feed
Smember ผู้ติดตามบล็อก : 112 คน [? ]
เนื้อหาบทความ ภาพประกอบ ไฟล์ตัวอย่าง ทั้งหมดใน blog นี้ "สงวนลิขสิทธิ์ตามพระราชบัญญัติลิขสิทธิ์ พุทธศักราช ๒๕๓๗" อนุญาตให้นำไปเผยแพร่ได้ โดยต้องระบุแหล่งที่มาของเนื้อหาให้ชัดเจน เพื่อแสดงถึงการรับรู้ในความเป็นเจ้าของลิขสิทธิ์ ทั้งนี้ไม่อนุญาตในการนำไปใช้เพื่อการแสวงหาผลกำไรทางธุรกิจ โดยไม่ได้รับความยินยอมเป็นลายลักษณ์อักษร
MSN : ysamroeng@hotmail.com
กิตติกรรมประกาศ ผมใช้คอมพิวเตอร์ครั้งแรก โดยมีหนังสือชื่อ "เรียน DBASE III PLUS ด้วยตนเอง" ของ พ.ต.ประพัฒน์ อุทโยภาศ เป็นเสมือนอาจารย์ และมี บร.โรเบิร์ต ปาแนสโต (ซดบ.) เป็นผู้ให้โอกาส และ้คำแนะนำ ถือเป็นก้าวแรก ที่้ผมจับคอมพิวเตอร์ และสนใจเรียนรู้ มาตั้งแต่วันนั้น นอกจากเรื่อง "การเขียนโปรแกรมด้วย Clipper" แล้ว ผมไม่เคย ไปเรียนคอมพิวเตอร์ จากสถาบันใด อาศัยที่เป็น คนชอบอ่านหนังสือ และซื้อหนังสือเยอะมาก บวกกับลงทุน ซื้อเครื่องไว้ใช้งานเอง (เครื่องแรก Intel 386DX-40) จึงได้ฝึกฝน เรียนรู้ ต่อเนื่องมาจนทุกวันนี้
มีของมาขาย 1. หนังสือ "Excel for HR" การใช้ไมโครซอฟต์เอ็กเซล ในงาน HR แบบมืออาชีพ พิมพ์ครั้งที่ 2 เป็นหนังสือที่เก็บเกี่ยวประสบการณ์ จากงานจริงๆ มาเป็นวัตถุดิบ เป็นหนังสือคอมพิวเตอร์เล่มแรก ที่เขียนขึ้นมาเพื่อ นักบริการทรัพยากรมนุษย์ (HR) โดยเฉพาะ เป็นตัวอย่างของการใช้โปรแกรม MS Excel ในงานประจำวันของ HR หาซื้อได้ที่ ร้านซีเอ็ดบุ๊ค ทุกสาขา, HR Center, ศูนย์หนังสือ สสท., ศูนย์หนังสือจุฬา, Thailand Book Tower, B2S เป็นต้น หรือสั่งซื้อโดยตรงได้ที่ 02-347-1066, 081-423-9828 ราคาเล่มละ 200 บาท จัดส่งฟรี2. CD รวมไฟล์ตัวอย่าง Excel จากงานจริง มีไฟล์ตัวอย่างมากที่สุด สามารถนำไปใช้งานได้ทันที หรือใช้ศึกษาเทคนิคการเขียนสูตร Excel อัพเดตใหม่ทุกสัปดาห์ ของแท้ไม่มีวางจำหน่ายที่ไหน สนใจสั่งซื้อโดยตรงที่ 02-347-1066, 081-423-9828 ราคาแผ่นละ 200 บาท ค่าจัดส่งฟรี หมายเหตุ : ปัจจุบันมีจำหน่ายทั้งสิ้น 3 ชุด ดูรายละเอียดเพิ่มเติมที่ https://sites.google.com/site/excel4hr/product
กิจกรรมของพวกเราที่ผ่านมา
รูปภาพหรือข้อความแสดงความเห็น เกิดจากการแสดงความคิดเห็นโดยอิสระ ของบุคคลทั่วไป และถูกส่งขึ้นแสดงในหน้า blog โดยอัตโนมัติ เจ้าของ blog มิได้มีส่วนรู้เห็น หรือพิสูจน์ข้อเท็จจริงใดๆ ทั้งสิ้น อีกทั้งไม่จำเป็นต้องร่วมรับผิดชอบ ต่อทุกความคิดเห็นใดๆ