Note: The other languages of the website are Google-translated. Back to English
English English

วิธีค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรกในสตริงข้อความของ Excel อย่างรวดเร็ว?

สมมติว่ามีรายการสตริงข้อความผสมกับตัวเลขตัวพิมพ์ใหญ่และตัวพิมพ์เล็กคุณจะค้นหาตำแหน่งของอักษรตัวพิมพ์ใหญ่ตัวแรกจากสตริงได้อย่างไร? ในบทความนี้ฉันแนะนำเทคนิคที่สามารถระบุตำแหน่งของตัวพิมพ์ใหญ่ตัวแรกได้อย่างรวดเร็วโดยไม่ต้องนับทีละรายการด้วยตนเองใน Excel

ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรกในสตริงด้วยสูตร

ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรกในสตริงด้วยฟังก์ชันที่กำหนด

เปลี่ยนตัวอักษรทั้งหมดเป็น UPPERCASE หรือ Case ที่เหมาะสมด้วย Kutools for Excel ความคิดที่ดี 3


ลูกศรสีฟ้าฟองขวา ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรกในสตริงด้วยสูตร

นี่คือสูตรที่สามารถช่วยให้คุณค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรกจากสตริงได้อย่างรวดเร็วโปรดทำดังนี้:

เลือกเซลล์ว่างถัดจากสตริงที่คุณต้องการค้นหาตัวพิมพ์ใหญ่ตัวแรกเช่น B1 ให้ป้อนสูตรนี้ =MIN(IF(ISERROR(FIND(CHAR(ROW(INDIRECT("65:90"))),A1)),"",FIND(CHAR(ROW(INDIRECT("65:90"))),A1)))

ข่าวประชา Shift + Ctrl + Enter เพื่อให้ได้ผลลัพธ์ที่ถูกต้องจากนั้นลากจุดจับเติมอัตโนมัติเหนือเซลล์ที่จำเป็นในการใช้สูตรนี้ ดูภาพหน้าจอ:
doc ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรก 1


ลูกศรสีฟ้าฟองขวา ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรกในสตริงด้วยฟังก์ชันที่กำหนด

นอกจากสูตรคุณยังสามารถใช้ฟังก์ชันที่กำหนดเพื่อค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรกในสตริง

1. เปิดใช้งานแผ่นงานที่มีสตริงที่คุณต้องการค้นหาตัวพิมพ์ใหญ่แล้วกด Alt + F11 กุญแจเพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2. คลิกขวาที่แผ่นงานที่คุณต้องการใช้รหัส สำรวจโครงการ บานหน้าต่างแล้วคลิก สิ่งที่ใส่เข้าไป > โมดูลและวางโค้ดด้านล่างลงในสคริปต์โมดูลเปล่า ดูภาพหน้าจอ:

รหัส: ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรกจากสตริง

Function GetFirstUpper(Rg As Range) As Integer
'UpdatebyExtendoffice20160726
    Dim xStr As String
    Dim I As Integer
    Application.Volatile
    GetFirstUpper = -1
    On Error Resume Next
    xStr = Trim(Rg.Value)
    For I = 1 To Len(xStr)
        If (Asc(Mid(xStr, I, 1)) < 91) And (Asc(Mid(xStr, I, 1)) > 64) Then
            GetFirstUpper = I
            Exit Function
        End If
    Next
End Function

doc ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรก 5

3. บันทึกรหัสและกลับไปที่แผ่นงานที่คุณใช้และเลือกเซลล์ว่างถัดจากสตริงที่คุณต้องการค้นหาตัวพิมพ์ใหญ่ป้อนสูตรนี้ = GetFirstUpper (F1)กด เข้าสู่ จากนั้นลากที่จับการป้อนอัตโนมัติเหนือเซลล์ที่ต้องการสูตรนี้ ดูภาพหน้าจอ:
doc ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรก 6

ปลาย: หากไม่มีตัวพิมพ์ใหญ่ในสตริงผลลัพธ์จะแสดงเป็น -1


ลูกศรสีฟ้าฟองขวา เปลี่ยนตัวอักษรทั้งหมดเป็น UPPERCASE หรือกรณีที่เหมาะสมด้วย Kutools for Excel

ในงาน Excel ทั่วไปคุณอาจต้องเปลี่ยนตัวอักษรเป็น UPPERCAEs, Proper Case, Smallcase, Sentence case หรือ ToGgLe CaSe ตามภาพด้านล่างที่แสดง
doc ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรก 2

กับ Kutools สำหรับ Excel คุณสามารถใช้ไฟล์ เปลี่ยนกรณี ยูทิลิตี้ในการเปลี่ยนตัวอักษรอย่างรวดเร็วตามที่คุณต้องการ

Kutools สำหรับ Excel, ที่มีมากกว่า 300 ฟังก์ชั่นที่มีประโยชน์ทำให้งานของคุณง่ายขึ้น 

หลังจาก ติดตั้งฟรี Kutools สำหรับ Excel โปรดทำดังนี้:

1. เลือกสตริงที่คุณต้องการเปลี่ยนเคสและคลิก Kutools > ข้อความ > เปลี่ยนกรณี. ดูภาพหน้าจอ:
doc ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรก 3

2. จากนั้นในการป๊อกกี้ เปลี่ยนกรณี ให้เลือกตัวเลือกที่คุณต้องการในไฟล์ เปลี่ยนประเภท และคุณสามารถดูตัวอย่างผลลัพธ์การเปลี่ยนแปลงได้ในบานหน้าต่างแสดงตัวอย่าง ดูภาพหน้าจอ:
doc ค้นหาตำแหน่งของตัวพิมพ์ใหญ่ตัวแรก 4

3 จากนั้นคลิก Ok or ใช้ เพื่อเปลี่ยนกรณี

ดาวน์โหลด doc 1


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (3)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี
โปรดช่วยฉันเข้าใจว่าทำไมคุณถึงใช้ INDIRECT("65:90") ความหมายของ "65:90" คืออะไร?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
65 ถึง 90 เป็นรหัสสำหรับอักขระตัวพิมพ์ใหญ่ ดังนั้นรหัสนี้จะตรวจสอบว่าตำแหน่งของรหัสอักขระนั้นอยู่ในช่วงใด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันขอแนะนำให้ใช้ CHAR(SEQUENCE(26, 1, 65)) ใหม่แทน CHAR(ROW(INDIRECT("65:90"))) หากทำได้ รหัสใหม่จะเข้าใจง่ายกว่าและทำให้เกิดปัญหากับระบบอัตโนมัติน้อยลง โต๊ะ
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ