Trace:
Differences
This shows you the differences between the selected revision and the current version of the page.
| spreadsheet:calc-name-charfunction 2008/11/27 04:53 | spreadsheet:calc-name-charfunction 2008/11/27 05:09 current | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| > [[spreadsheet:start|กระดาษทำการ]] | > [[spreadsheet:start|กระดาษทำการ]] | ||
| - | ====== การแก้ไข Error #N/A ====== | + | ====== จัดการชื่อคนด้วยฟังก์ชันตัวอักษร====== |
| - | บางครั้้งเมื่อใช้ฟังก์ชันคำนวณใดๆ อาจจะแสดง Error #NA ในเซลล์ที่การคำนวณยังไม่สมบูรณ์ดังนี้ | + | ฟังก์ชันตัวอักษรที่น่าสนใจได้แก่ |
| - | {{:spreadsheet:isna01.gif|}} | + | =find(ข้อความที่จะค้น;ข้อมูลที่ถูกค้น;ตำแหน่งเริ่มต้นค้นหา) ค้นหาอักขระที่ระบุจากข้อความ สนใจตัวใหญ่ตัวเล็ก |
| + | =left(ข้อความต้นฉบับ;จำนวนอักขระ) คัดเลือกข้อความตามจำนวนจากซ้าย | ||
| + | =right(ข้อความต้นฉบับ;จำนวนอักขระ) คัดเลือกข้อความตามจำนวนจากขวา | ||
| + | =mid(ข้อความ;ตำแหน่งเริ่มต้น;จำนวนอักขระ) คัดเลือกข้อความจากตำแหน่งที่ระบุ | ||
| + | =len(ข้อความ) นับจำนวนอักขระ | ||
| + | =lower(ข้อความ) เปลี่ยนเป็นตัวพิมพ์เล็ก | ||
| + | =upper(ข้อความ) เปลี่ยนเป็นตัวพิมพ์ใหญ่ | ||
| + | =proper(ข้อความ) เปลี่ยนตัวแรกให้เป็นตัวพิมพ์ใหญ่ | ||
| + | =trim(ข้อความ) ตัดช่องว่างอื่นๆ ออกจากข้อความ ยกเว้นช่องว่างเดี่ยวระหว่างคำ | ||
| - | การแก้ไข Error #N/A จะต้องใช้ฟังก์ชัน =isna() ตรวจสอบว่าในเซลล์ดังกล่าวมี Error นี้หรือไม่ ถ้ามีก็จะแสดงค่าจริง (1) แต่ถ้าไม่มีก็จะแสดงค่าเท็จ (0) ดังนั้นจึงต้องนำฟังก์ชัน =if() มาช่วยในการตรวจสอบและััจัดการใหม่ กรณีข้างต้น แสดงว่าในเซลล์อื่นๆ ยังไม่มีการป้อนรหัสทำให้ชื่อสินค้าแสดงข้อผิดพลาด #N/A จึงต้องแก้ไขโดยให้แสดงเป็นค่าว่างแทน ด้วยสูตร =IF(ISNA(VLOOKUP(B8;$J$4:$L$8;2));" ";VLOOKUP(B8;$J$4:$L$8;2)) | + | ตัวอย่างมีข้อมูลดังนี้ |
| - | {{:spreadsheet:isna02.gif|}} | + | {{:spreadsheet:textf01.gif|}} |
| + | |||
| + | ต้องการแยกชื่อออกจากนามสกุล ทำได้ดังนี้ | ||
| + | |||
| + | ใช้ฟังก์ชัน Find หาช่องว่างก่อนว่าอยู่ตำแหน่งที่เท่าไร ด้วยคำสั่ง =FIND(" ";A2) | ||
| + | |||
| + | {{:spreadsheet:textf02.gif|}} | ||
| + | |||
| + | จะตัวอย่างจะทราบว่าช่องว่างระหว่างชื่อและนามสกุลของแต่ละรายการ คือ ตำแหน่งที่เท่าไร เช่น รายการแรก คือ ตำแหน่งที่ 5 ดังนั้นการแยกชื่อ ก็คือ การแสดงตัวอักษรตัวแรกจนถึงตัวที่ 5 (หรือ 5-1 นั่นเอง) | ||
| + | |||
| + | ฟังก์ชันที่ตรงกับโจทย์ก็น่าจะเป็น MID ดังนี้ | ||
| + | |||
| + | {{:spreadsheet:textf03.gif|}} | ||
| + | |||
| + | จากนั้นแสดงนามสกุล ด้วยคำสั่ง | ||
| + | |||
| + | {{:spreadsheet:textf04.gif|}} | ||
| + | |||
| + | ฟังก์ชันที่เหลือน่าจะลองประยุกต์ได้น่ะครับ | ||
| + | |||
| + | แล้วถ้าข้อมูลต้นฉบับเป็นอย่างนี้ล่ะครับ จะแยกนำคำหน้าด้วยได้อย่างไร | ||
| + | |||
| + | {{:spreadsheet:textf05.gif|}} | ||
| ---- | ---- | ||
