Page 1 of 1

ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Mon Jun 25, 2018 12:32 pm
by tingpcj
รบกวนขอความช่วยเหลือครับ.
ผมอยากจะแยกเอาเฉพาะเบอร์โทรที่อยู่ด้านหน้าซ้ายมือ ออกมาไว้อีกช่อง ตามตัวอย่างครับ ต้องใช้สูตรอย่างไรครับ
ขอบคุณครับ
ตัวอย่างการตัดเบอร์โทรศัพท์.xlsx

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Mon Jun 25, 2018 8:24 pm
by snasui
:D ตัวอย่างสูตรครับ

เซลล์ B1 คีย์

=TRIM(SUBSTITUTE(LEFT(A1,MATCH(TRUE,INDEX(CODE(MID(A1&"ก",ROW(INDIRECT("1:"&LEN(A1&"ก"))),1))>=161,0),0)-1),"/",""))

Enter > Copy ลงด้านล่าง

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Tue Jun 26, 2018 8:45 am
by tingpcj
รบกวนขอคำแนะนำครับ พอใส่สูตรตามที่ท่านได้แจ้งมาแล้วมันไม่แสดงผลลัพธ์ ตามที่ต้องการครับ (ตามไฟล์แนบครับ)
ขอบคุณครับผม

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Tue Jun 26, 2018 9:28 am
by logic
ผมเปิดไฟล์ดูแสดงผลลัพธ์อยู่นี่ครับ

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Tue Jun 26, 2018 9:42 am
by tingpcj
พอวางสูตรในเครื่องผมแล้วขึ้นแบบนี้ครับ (ตามรูปครับ) หรือผมต้องตั้งค่า Cell อย่างไรหรือเปล่าครับ ผมใช้ MS Office 2013 ครับ
Untitled.jpg

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Tue Jun 26, 2018 3:04 pm
by tingpcj
ผมได้นำสูตรไปใช้กับเครื่องของพนักงานปรากฎว่าสามารถแสดงผลได้อย่างถูกต้องครับ
ขอขอบคุณทุกท่านมากครับผม

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Wed Jun 27, 2018 4:28 pm
by Supachok
เรียน ท่านอาจารย์

=TRIM(SUBSTITUTE(LEFT(A1,MATCH(TRUE,INDEX(CODE(MID(A1&"ก",ROW(INDIRECT("1:"&LEN(A1&"ก"))),1))>=161,0),0)-1),"/",""))

หลังจากสูตรคำนวนแล้วตรง function
MATCH(TRUE,T,T,T,T,F,F,F)
งงว่าทำไม ผลลัพธ์ที่ได้จึงได้ 12 ทุกครั้ง

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Wed Jun 27, 2018 8:23 pm
by snasui
Supachok wrote: Wed Jun 27, 2018 4:28 pm หลังจากสูตรคำนวนแล้วตรง function
MATCH(TRUE,T,T,T,T,F,F,F)
งงว่าทำไม ผลลัพธ์ที่ได้จึงได้ 12 ทุกครั้ง
ลองเขียนมาเต็ม ๆ ไม่ต้องย่อ เป็น T, F ในฟังก์ชั่น Match มีเท่าไรเขียนมาทั้งหมด สูตรที่ยกมาด้านบนไม่มีโอกาสเป็น 12 ครับ :mrgreen:

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Wed Jun 27, 2018 10:35 pm
by Supachok
Cell A4
02 165 5555 ไม่มีคนรับสาย

=TRIM(SUBSTITUTE(LEFT("02 165 5555 ไม่มีคนรับสาย", :D MATCH(TRUE,{FALSE:FALSE:FALSE:FALSE:FALSE:FALSE:FALSE:FALSE:FALSE:FALSE:FALSE:FALSE:TRUE:TRUE:TRUE:TRUE:TRUE:TRUE:TRUE:TRUE:TRUE:TRUE:TRUE:TRUE:TRUE:TRUE:},0) :D -1),"/",""))


=TRIM(SUBSTITUTE(LEFT("02 165 5555 ไม่มีคนรับสาย", :D 13 :D -1),"/",""))

สงสัยในช่วงที่ใส่ :D ไว้ครับ ว่าผลลัพธ์ออกมาได้ 12 หรือ 13

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Wed Jun 27, 2018 10:43 pm
by snasui
:lol: กรุณาช่วยเขียนให้เป็นสูตรครับ

ในสูตรไม่ควรใส่ Icon จะทำให้อ่านลำบาก ผู้ที่อื่นพลอยเข้าใจยากไปด้วย

สูตรที่เขียนมาแสดงไม่ถูกต้อง Array ใน Match จะคั่นด้วย ; หรือ , เท่านั้น ไม่สามารถคั่นด้วย : ได้ ซึ่งปกติควรจะคัดลอกจาก Formula Bar มาวางในช่องความเห็นนี้ไม่ควรคีย์ใหม่

ลักษณะของสูตรจะเป็นเช่น =Match(True,{False,False,True,False,...},0)

จากตัวอย่างนี้ True ตัวแรกในค่าคงที่ Array คือ {False,False,True,False,...} อยู่ในตำแหน่งใดก็จะให้ผลลัพธ์เป็นค่านั้นครับ

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Thu Jun 28, 2018 9:03 am
by Supachok
เรียน ท่านอาจารย์

ขออธิบายแบบนี้ครับ
ผมกด F9 ดูสูตรไม่เป็นไม่รู้ว่าตัวไหนทำก่อนทำหลัง บางครั้งกดแล้วไม่ไปอาจเพราะคุม ()ไม่ถูก

จึงอาศัย Evaluate formula แต่ Dialog มีขนาดจำกัดไม่สามารถขยายได้และ Copy ไม่ได้
ทำให้ต้องเปิด Evaluate formula และคีย์ลอกเอง.

สามารถสูตรตอนแรกยังงงๆ แต่ตอนนี้เข้าใจและว่า
Match(True,{False,False,True,False,...},0) = 3 อ้างจากตำแหน่งแรกที่เจอเท่านั้น.
เพราะเข้าใจว่าไปนับจำนวน True ใน array

ขอบคุณครับ
ปล. พอช่วยอธิบายการใช้ F9 ในการคลี่ สูตรแบบสังเขปได้ไหมครับ

Re: ขอความช่วยเหลือ แยกเบอร์โทรศัพท์ ออกจากรายงานครับ

Posted: Thu Jun 28, 2018 12:57 pm
by snasui
Supachok wrote: Thu Jun 28, 2018 9:03 am พอช่วยอธิบายการใช้ F9 ในการคลี่ สูตรแบบสังเขปได้ไหมครับ
:D คลุมส่วนประกอบในสูตรที่เราสนใจแล้วกดแป้น F9 สูตรจะกลายเป็นผลลัพธ์ออกมา หากเป็นการคลุมครอบสูตรต้องสังเกตการเข้าวงเล็บด้วยครับ