คัดลอกเซลล์บางส่วนไปยังเซลล์อื่นใน OpenOffice Calc


11

Cell A1 พูดว่า 0001 John Smith Cell A2 พูดว่า 0002 Bill Snyder

ฉันต้องการแยกโดยทั่วไปดังนั้นหนึ่งคอลัมน์เพียงแสดงตัวเลข (0001, 0002 ฯลฯ ) แล้วคอลัมน์อื่นจะแสดงชื่อ

ส่วนแรกนั้นง่าย การใช้ฟังก์ชั่น "= LEFT (A1; 4)" ฉันจะได้รับ 0001 ฉันจะคว้าชื่อได้อย่างไร ตัวอย่างเช่นการใช้ "RIGHT (A1; 99)" จะคว้าสตริงทั้งหมด "0001 John Smith" เนื่องจากชื่อแต่ละชื่อมีความยาวต่างกันฉันไม่แน่ใจว่าต้องทำอะไร ฉันจะบอกให้จับสตริงทั้งหมดยกเว้นตัวอักษร 4 ตัวแรกได้ไหม? หรืออย่างใดบอกให้คว้าสองคำสุดท้ายแทนจำนวนตัวละครเหมือนถาม?

คำตอบ:


12

ในการรับสตริงย่อยยกเว้นอักขระ 4 ตัวแรก (รวมถึงช่องว่าง) คุณสามารถใช้MIDฟังก์ชัน:

MID(A1,6,LEN(A1))

มันจะส่งผลให้'จอห์นสมิ ธ กล่าวว่าเซลล์ A2 0002 บิลไนเดอร์' นอกจากนี้คุณยังสามารถเลียนแบบการแยกข้อความด้วยFINDฟังก์ชันตัวอย่างเช่นสูตรนี้จะแสดงผล'0001' :

LEFT(A1,FIND(" ",A1)-1)

นอกจากนี้จะมีการส่งออกจอห์น (สมมติว่าข้อความต้นฉบับอยู่ในเซลล์A1และสูตรก่อนหน้านี้เป็นB1 )

MID(A1,LEN(B1)+2,FIND(" ",A1,LEN(B1)))

ที่นี่:

  • A1 - ข้อความต้นฉบับ
  • LEN (B1) +2 - ตำแหน่งเริ่มต้น (ความยาวของรหัส 0001 + ตัวคั่น + 1)
  • FIND ("", A1, LEN (B1)) - ตำแหน่งสิ้นสุด (เช่นการเกิดช่องว่างถัดไป)

และคุณสามารถอธิบายเพิ่มเติมเพื่อให้ได้ 2 คำสุดท้าย :)


ตัวอย่างด้านบนใช้อักขระจุลภาคเมื่อ OpenOffice 4.1 ต้องใช้อักขระเครื่องหมายอัฒภาค ตัวอย่างเช่น LEFT (A1, FIND ("", A1) -1) ต้องเป็น LEFT (A1; FIND (""; A1) -1)
Frank Cohen
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.