สารบัญ
ในบทความนี้ เราจะ ค้นหา เหตุการณ์ล่าสุด ของ อักขระ ใน สตริง ใน เอ็กเซล . ชุดข้อมูลตัวอย่างของเรามี สามคอลัมน์ : ชื่อบริษัท , รหัสพนักงาน และ การเกิดขึ้นล่าสุด รหัสพนักงาน ประกอบด้วยชื่อ อายุ และแผนกของพนักงาน
สำหรับ 4 วิธีแรก เราจะค้นหาตำแหน่งของเครื่องหมายทับ “ / ” สำหรับค่าทั้งหมดใน รหัสพนักงาน หลังจากนั้น เราจะส่งออก strings หลังเครื่องหมายทับสุดท้ายใน 2 เมธอดสุดท้าย
ดาวน์โหลดแบบฝึกหัด
ค้นหาการเกิดขึ้นล่าสุดของอักขระใน String.xlsm
6 วิธีใน Excel เพื่อค้นหาการเกิดขึ้นล่าสุดของอักขระใน สตริง
1. การใช้ FIND & ฟังก์ชัน SUBSTITUTE ใน Excel เพื่อหาตำแหน่งของตัวอักษรที่เกิดขึ้นล่าสุดในสตริง
สำหรับวิธีแรก เราจะใช้ฟังก์ชัน FIND ซึ่งเป็นฟังก์ชัน SUBSTITUTE , ฟังก์ชัน CHAR และฟังก์ชัน LEN เพื่อ ค้นหา ตำแหน่ง สุดท้าย ของเครื่องหมายทับใน สตริง ของเรา .
ขั้นตอน:
- ประการแรก พิมพ์สูตรต่อไปนี้ใน เซลล์ D5 .
=FIND(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))/LEN("/")))
รายละเอียดสูตร
หน้าที่หลักของเราคือ ค้นหา เราจะหาค่า CHAR(134) ในสตริงของเรา
- CHAR(134)
- เอาท์พุต:† .
- เราจำเป็นต้องตั้งค่าอักขระที่ไม่มีอยู่ในสตริงของเรา เราเลือกเพราะมันหายากในสตริง หากคุณมีสิ่งนี้ในสตริง ให้เปลี่ยนเป็นอะไรก็ได้ที่ไม่อยู่ในสตริงของคุณ (เช่น “ @ ”, “ ~ ” เป็นต้น)
- SUBSTITUTE(C5,”/”,CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,”/”,””)))/LEN(“/ ”)) -> กลายเป็น
- SUBSTITUTE(C5,”/”,”†”,(17-LEN(“Mike32Marketing”))/1) -> กลายเป็น
- SUBSTITUTE(“Mike/32/Marketing”,”/”,”†”,(17-15)/1)
- เอาต์พุต : “Mike/32†Marketing” .
- ตอนนี้สูตรทั้งหมดของเรากลายเป็น
- =FIND(“†”,”Mike/32 †การตลาด”)
- เอาต์พุต: 8 .
- ประการที่สอง กด ENTER .
เราจะเห็นค่า 8 ถ้าเรานับเองจากด้านซ้าย เราจะได้ 8 เป็นตำแหน่งสำหรับ เครื่องหมายทับ ใน เซลล์ C5 .
- สุดท้าย ใช้ Fill Handle เพื่อคัดลอกสูตรลงมา
ดังนั้นเราจึงได้ตำแหน่งของ สุดท้าย การเกิดขึ้น ของ อักขระ ใน สตริง ของเรา
อ่านเพิ่มเติม: ฟังก์ชัน Excel: FIND vs SEARCH (การวิเคราะห์เปรียบเทียบ)
2. การใช้ MATCH & ฟังก์ชัน SEQUENCE ใน Excel เพื่อค้นหาตำแหน่งการเกิดขึ้นล่าสุดของอักขระในสตริง
สำหรับวิธีที่ 2 เราจะใช้ฟังก์ชัน MATCH ซึ่งเป็นฟังก์ชัน SEQUENCE , กลาง ฟังก์ชัน และฟังก์ชัน LEN เพื่อค้นหาตำแหน่งของ เหตุการณ์ล่าสุด ของ อักขระ ใน สตริง โปรดจำไว้ว่าฟังก์ชัน SEQUENCE มีเฉพาะใน Excel 365 หรือ Excel 2021 เท่านั้น
ขั้นตอน:
- ประการแรก พิมพ์สูตรต่อไปนี้ใน เซลล์ D5
=MATCH(2,1/(MID(C5,SEQUENCE(LEN(C5)),1)="/"))
รายละเอียดของสูตร
- ลำดับ(LEN(C5))
- เอาต์พุต: {1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17} .
- The <1 ฟังก์ชัน>LEN กำลังวัดความยาวของ เซลล์ C5 ฟังก์ชัน SEQUENCE จะส่งคืนรายการตัวเลขตามลำดับในอาร์เรย์
- MATCH(2,1/(MID(C5,{1;2; 3;4;5;6;7;8;9;10;11;12;13;14;15;16;17},1)=”/”))
- เอาต์พุต: 8 .
- ฟังก์ชัน Match กำลังค้นหาค่า 1 สุดท้ายในสูตรของเรา อยู่ในตำแหน่ง 8
- ประการที่สอง กด ENTER .
โดยใช้สูตร เราพบตำแหน่งของ forward-slash เป็น 8 ใน string .<3
- สุดท้าย ใช้ Fill Handle เพื่อ AutoFill สูตร
โดยสรุป เราได้ใช้สูตรอื่นเพื่อค้นหา ตำแหน่งสุดท้าย ของ อักขระ ใน สตริง
<0 อ่านเพิ่มเติม: วิธีค้นหาอักขระในสตริง Excel (8 วิธีง่ายๆ)
3. การใช้สูตรอาร์เรย์ใน Excel เพื่อหาตำแหน่งของการเกิดขึ้นล่าสุดของอักขระในสตริง
เราจะใช้ฟังก์ชัน ROW , ฟังก์ชัน INDEX , MATCH , MID และฟังก์ชัน LEN เพื่อสร้างสูตรอาร์เรย์เพื่อค้นหาตำแหน่งของ เหตุการณ์ล่าสุด ของ อักขระ ใน สตริง .
ขั้นตอน:
- ขั้นแรก พิมพ์สูตรจากด้านล่างไปที่ เซลล์ D5 .
=MATCH(2,1/(MID(C5,ROW($C$1:INDEX(C:C,LEN(C5))),1)="/"))
รายละเอียดสูตร
สูตรคล้ายกับวิธี 2 เรากำลังใช้ฟังก์ชัน ROW และ INDEX เพื่อจำลองเอาต์พุตเป็นฟังก์ชัน SEQUENCE
- ROW ($C$1:INDEX(C:C,LEN(C5)))
- เอาต์พุต: {1;2;3;4;5;6;7;8;9; 10;11;12;13;14;15;16;17} .
- เราจะเห็นว่าผลลัพธ์เหมือนกัน ฟังก์ชัน INDEX ส่งกลับค่าของช่วง ฟังก์ชัน LEN นับความยาวของสตริงจาก เซลล์ C5 สุดท้าย ฟังก์ชัน ROW จะส่งคืนค่า เซลล์ จาก 1 ถึง เซลล์ ความยาว C5 สูตรที่เหลือเหมือนกับวิธี 2 .
- ประการที่สอง กด ENTER .
เราได้ 8 เป็นค่าตามที่คาดไว้ สูตรของเราทำงานได้อย่างไร้ที่ติ
หมายเหตุ: เรากำลังใช้เวอร์ชัน Excel 365 หากคุณใช้เวอร์ชันเก่ากว่า คุณจะต้องกด CTRL + SHIFT + ENTER
- สุดท้าย ดับเบิล -คลิกหรือลาก Fill Handle ลงมา
นี่คือลักษณะของขั้นตอนสุดท้าย
อ่านเพิ่มเติม: ค้นหาการเกิดขึ้นครั้งแรกของค่าในช่วงใน Excel (3 วิธี)
การอ่านที่คล้ายกัน<2
- วิธีหาอักขระ * ไม่เป็น Wildcard ใน Excel (2 วิธี)
- วิธีใช้สูตร Excel หาตัวเลขแถวสุดท้ายด้วย ข้อมูล (2 วิธี)
- ค้นหาค่าสุดท้ายในคอลัมน์ที่มากกว่าศูนย์ใน Excel (2 สูตรง่ายๆ)
- วิธีค้นหาลิงก์ใน Excel
- ค้นหาลิงก์ภายนอกใน Excel (6 วิธีด่วน)
4. ฟังก์ชันที่ผู้ใช้กำหนดเพื่อค้นหาตำแหน่งของอักขระที่เกิดขึ้นล่าสุดในสตริง
ในวิธีนี้ เราจะใช้สูตร VBA ที่กำหนดเองเพื่อค้นหาตำแหน่งสุดท้ายของ อักขระ ใน สตริง เพื่อไม่ให้เป็นการเสียเวลา เรามาดำเนินการกัน
ขั้นตอน:
- ขั้นแรก กด ALT + F11 เพื่อเปิดหน้าต่าง VBA ขึ้นมา
คุณสามารถเลือก Visual Basic จากแท็บ นักพัฒนาซอฟต์แวร์ ด้วย
- ประการที่สอง จาก แทรก >>> เลือก โมดูล .
- ประการที่สาม คัดลอก และ วาง รหัสต่อไปนี้ .
9122
เราได้สร้างฟังก์ชันแบบกำหนดเองชื่อ “ LOccurence ” InStrRev เป็นฟังก์ชัน VBA ที่ส่งกลับตำแหน่งสิ้นสุดของ อักขระ เราจะป้อนค่า เซลล์ เป็น x1 และอักขระเฉพาะ (ในกรณีของเรา มันคือ เครื่องหมายทับ ) เป็น x2 ในฟังก์ชันแบบกำหนดเองนี้
- หลังจากนั้น ปิดหน้าต่าง VBA และไปที่ " ตำแหน่ง VBA " แผ่นงาน
- พิมพ์สูตรต่อไปนี้ใน เซลล์ D5 .
=LOccurence(C5,"/")
ในฟังก์ชันแบบกำหนดเองนี้ เรากำลังบอก เพื่อค้นหาตำแหน่งของ เหตุการณ์ล่าสุด ของ เครื่องหมายทับ ใน สตริง จาก เซลล์ C5 .
- จากนั้นกด ENTER .
เราได้ 8 ตามที่คาดไว้เป็น ล่าสุด เกิดขึ้น ตำแหน่งของ เครื่องหมายทับข้างหน้า .
- สุดท้าย เราสามารถลากสูตรลงมาโดยใช้ Fill Handle . <15
- ประการแรก พิมพ์สูตรต่อไปนี้ใน เซลล์ D5 .
- SUBSTITUTE(C5,”/”,CHAR(134),2)
- เอาต์พุต: “Mike/32†Marketing” .
- ฟังก์ชัน SUBSTITUTE จะแทนที่ค่าด้วยค่าอื่น ในกรณีของเรา จะแทนที่แต่ละ เครื่องหมายทับ ด้วยเครื่องหมาย † ในส่วนแรกและเว้นว่างไว้ในส่วนหลัง จากนั้นฟังก์ชัน LEN จะวัดความยาวของสิ่งนั้น นั่นคือคุณค่าของเรา
- SEARCH(“†”,”Mike/32†Marketing”)
- เอาต์พุต: 8 .
- ฟังก์ชัน SEARCH กำลังค้นหาอักขระพิเศษในเอาต์พุตก่อนหน้าของเรา ดังนั้น จึงพบใน 8th
- ในที่สุด สูตรของเราลดเหลือ RIGHT(C5,9)
- เอาท์พุต: “Marketing” .
- ฟังก์ชัน RIGHT ส่งกลับค่าเซลล์ทางด้านขวาจนถึงจำนวนอักขระที่กำหนด เราพบตำแหน่งของ forward-slash สุดท้ายใน 8th ความยาวของ เซลล์ C5 คือ 17 และ 17 – 8 = 9 . ดังนั้นเราจึงได้ 9 อักขระ จากด้านขวาเป็นเอาต์พุต
- ประการที่สอง กด ENTER .
- สุดท้าย ใช้ Fill Handle เพื่อ AutoFill สูตรลงใน เซลล์ ช่วง D6:D10 .
- ประการแรก ให้กด ALT + F11 เพื่อเปิดหน้าต่าง VBA ขึ้นมา
- อย่างที่สอง จาก แทรก >>> เลือก โมดูล ตามที่เราทำในวิธี 4
- ประการที่สาม คัดลอก และ วาง รหัสต่อไปนี้
ดังนั้นเราจึงใช้สูตรอื่นเพื่อค้นหาตำแหน่งของ เหตุการณ์ล่าสุด ของ อักขระ .
อ่านเพิ่มเติม: วิธีค้นหาอักขระในสตริงจากด้านขวาใน Excel (4 วิธีง่ายๆ)
5. การใช้ รวมฟังก์ชันใน Excel เพื่อค้นหาการเกิดขึ้นล่าสุดของ C haracter ใน String
ถึงตอนนี้ เราได้เห็นวิธีค้นหาตำแหน่งที่เกิดขึ้นล่าสุดของอักขระแล้ว ตอนนี้เราจะใช้ฟังก์ชัน SEARCH , ฟังก์ชัน RIGHT , SUBSTITUTE , LEN , CHAR ฟังก์ชันแสดงสตริงหลังจากเกิดอักขระครั้งล่าสุด พูดง่ายๆ ก็คือ เราจะส่งออกแผนกของพนักงานจาก รหัสพนักงานคอลัมน์ .
ขั้นตอน:
=RIGHT(C5,LEN(C5)-SEARCH(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))))
รายละเอียดสูตร
- <13 SUBSTITUTE(C5,”/”,CHAR(134),LEN(C5)-LEN(SUBSTITUTE(C5,”/”,””))) -> กลายเป็น
เราได้รับ สตริง หลังจากสุดท้าย forward-slash .
ดังนั้นเราจึงแยก สตริง หลังจาก เหตุการณ์ล่าสุด ของ อักขระ .
อ่านเพิ่มเติม: วิธีค้นหาว่าเซลล์มีข้อความเฉพาะใน Excel
6. สูตร VBA แบบกำหนดเองใน Excel เพื่อค้นหาการเกิดขึ้นล่าสุดของอักขระในสตริง
สำหรับวิธีสุดท้าย เราจะใช้สูตร VBA แบบกำหนดเองเพื่อ แยก สตริง หลังจาก เครื่องหมายทับ .
ขั้นตอน:
คุณสามารถเลือก Visual Basic จาก นักพัฒนาซอฟต์แวร์ แท็บที่จะทำเช่นกัน
5474
เรากำลังสร้างฟังก์ชันแบบกำหนดเองชื่อ “ LastString ” ฟังก์ชันนี้จะส่งคืนตำแหน่งเริ่มต้นของ สตริง หลังจาก เหตุการณ์ล่าสุด ของ อักขระ
- หลังจากนั้น พิมพ์สูตรจากด้านล่างไปที่ เซลล์ D5 .
=RIGHT(C5,LEN(C5)-LastString(C5,"/")+1)
รายละเอียดสูตร
- LastString(C5,”/”)
- เอาต์พุต: 9 .
- ที่นี่ เราได้รับตำแหน่งเริ่มต้นของ สตริง ทันทีหลังจาก เครื่องหมายทับสุดท้าย .
- LEN(C5)
- เอาต์พุต: 17 .<14
- LEN(C5)-LastString(C5,”/”)+1
- เอาต์พุต: 9.
- เราต้องเพิ่ม 1 มิฉะนั้นเราจะได้ค่าด้วย " M "
- สูตรของเราจะลดเหลือ ขวา(C5,9)
- ผลลัพธ์: “ การตลาด “.
- กด ENTER .
เราจะได้ค่า “ Marketing ”
- สุดท้าย ป้อนอัตโนมัติ สูตรจนถึง เซลล์ C10 .
เราประสบความสำเร็จ เป้าหมาย. สูตรทำงานได้ตามที่ต้องการ
อ่านเพิ่มเติม: วิธีค้นหาแถวสุดท้ายด้วยค่าเฉพาะใน Excel (6 วิธี)<2
ส่วนการปฏิบัติ
เราได้แนบชุดข้อมูลการปฏิบัตินอกเหนือจากแต่ละวิธีในไฟล์ Excel คุณสามารถฝึกฝนงานนี้ให้เก่งขึ้น
สรุป
เราได้แสดงวิธีการ 6 ใน Excel เพื่อค้นหา เหตุการณ์ล่าสุด ของ อักขระ ใน สตริง หากคุณมีปัญหาเกี่ยวกับสิ่งเหล่านี้ โปรดแสดงความคิดเห็นด้านล่าง ขอบคุณที่อ่านและเก่งขึ้นเรื่อยๆ!