snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ
ฟอรัมถาม-ตอบปัญหาการใช้งาน Power Query and Power BI
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่างเพิ่มเติม)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#1
Post
by wisitsakbenz » Fri Feb 04, 2022 11:58 am
อยากตัดข้อความให้เหลือเฉพาะ Email ต้องใช้สูตรอย่างไรครับ
เช่น - Sebastian Grabowski - <
sebgrab@gmail.com >
ให้เหลือ
sebgrab@gmail.com
Code: Select all
Email 2 =
VAR FINDIT =
FIND ( "<", 'aa SVNH_EMAIL'[Email From], 1, 0 )
RETURN
IF ( FINDIT > 0, MID ('aa SVNH_EMAIL'[Email From] , FINDIT+1, 999 ))
ต้องปรับ Code อย่างไรครับ ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#2
Post
by snasui » Fri Feb 04, 2022 12:26 pm
กรุณาแนบตัวอย่างไฟล์ Power BI มาด้วย หากไฟล์มีขนาดใหญ่ขอให้ ZIP มาก่อนครับ
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#3
Post
by wisitsakbenz » Fri Feb 04, 2022 1:32 pm
แนบให้แล้วครับอาจารย์
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#4
Post
by snasui » Fri Feb 04, 2022 1:53 pm
ตัวอย่างการตัดมาเฉพาะอีเมลครับ
Email 2 = SUBSTITUTE(MID([Email From],FIND("<",[Email From])+1,255),">","")
You do not have the required permissions to view the files attached to this post.
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#5
Post
by wisitsakbenz » Fri Feb 04, 2022 2:02 pm
เรียน อาจารย์
นำไปใส่ในไฟล์จริง error ดังภาพครับ
ไม่แน่ใจว่าผมทำผิดตรงไหนครับ ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#6
Post
by snasui » Fri Feb 04, 2022 2:08 pm
ลองเทียบเคียงเองจากไฟล์ตัวอย่างที่ให้มา ไม่เช่นนั้นต้องทำไฟล์ตัวอย่างให้เหมือนกับในไฟล์จริงแล้วแนบมาใหม่ครับ
You do not have the required permissions to view the files attached to this post.
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#7
Post
by wisitsakbenz » Fri Feb 04, 2022 2:22 pm
เรียน อาจารย์
ผมแนบไฟล์ผิดครับ
บาง Email อาจจะไม่มีเครื่องหมาย :"<"
รบกวนอาจารย์อีกครั้งครับ ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#8
Post
by snasui » Fri Feb 04, 2022 2:40 pm
ตัวอย่างการปรับสูตรครับ
Email 2 = IFERROR(SUBSTITUTE(MID([Email From],FIND("<",[Email From])+1,255),">",""),[Email From])
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#9
Post
by wisitsakbenz » Fri Feb 04, 2022 2:51 pm
ได้แล้วครับอาจารย์ snasui
ขอบคุณอาจารย์มากเลยครับ
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#10
Post
by wisitsakbenz » Fri Feb 04, 2022 3:09 pm
เรียน อาจารย์
รบกวนสอบถามสูตร Column > Email Group
เช่น Email :
svnhcontact@samitivej.co.th ปกติต้องเป็น Internal
แต่ในสูตรกลับเป็น BDMS
ไม่แน่ใจว่าต้องปรับสูตรอย่างไรครับ ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#12
Post
by snasui » Fri Feb 04, 2022 5:11 pm
ไม่ควรใช้สูตรลักษณะนี้กับข้อมูลจำนวนมาก เพราะข้อมูลสามารถเพิ่มขึ้นได้ตลอดเวลา แม้มีอีเมลเพิ่มขึ้นมาเพียงรายการเดียวที่แตกต่างไปจากเดิมก็จะเกิดความยุ่งยากต้องเข้ามาแก้ไขสูตรครับ
Email และ Email Group ควรทำเป็นตารางต่างหากแล้วสร้าง Relation กับตารางอื่น ๆ เพื่อนำไปแสดงในรายงาน เข่นนี้เป็นต้นครับ
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#13
Post
by wisitsakbenz » Fri Feb 04, 2022 6:03 pm
เรียน อาจารย์ มันจะมี email นอกเหนือจากนี้ซึ่งไม่รู้ว่าคือ email อะไรบ้างอยากจะให้เป็น individual ซึ่งจำเป็นจะต้องเขียนแบบนี้ครับ
อาจารย์พอแนะนำได้หรือไม่ครับ ขอบคุณครับ
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#14
Post
by snasui » Fri Feb 04, 2022 7:29 pm
ผมไม่เห็นความจำเป็นว่าต้องเขียนเช่นนั้นครับ
วิธีที่แนะนำคือ สร้างตารางขึ้นมาใหม่ แยกเป็น 2 คอลัมน์เป็นอย่างน้อย
คอลัมน์แรกเป็น Email Group คอลัมน์ที่สองเป็น Email หรือสลับคอลัมน์กันก็ได้ ดึงตารางนี้เข้า Power BI ไปด้วย หากเดิมมี 1 Table ก็จะได้เป็น 2 Table จากนั้นค่อยนำ 2 Tables นี้มาสร้างความสัมพันธ์กัน ส่วนนี้ถ้าไม่ทราบวิธีทำก็ถามกันมาได้ครับ
สำหรับการเขียนเช่นไฟล์ที่แนบมาก็ต้องแยกให้ได้รายตัวเช่นกันว่าอีเมลไหน Group ไหนเพื่อที่จะเขียนสูตรแยกออกมาได้ และการที่จะบอกว่าอีเมลใดอยู่ Group ใดจะต้องแจกแจงเป็นรายตัวมาทุกตัว เพื่อที่จะเขียนสูตรกำหนด Group ให้กับ Email นั้น ๆ หรือที่จะมีเพิ่มเติมเข้ามาได้ ถ้าบอกมาไม่ได้ก็เขียนให้ไม่ได้ครับ
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#15
Post
by wisitsakbenz » Fri Feb 04, 2022 8:57 pm
เรียน อาจารย์ snasui
ในการทำที่อาจารย์แนะนำนั้นผมทำแล้วครับ แต่จะติดในส่วนของ List ของ email individual นั้น อยู่นอกเหนือจาก email ที่กำหนด Group ให้แล้วข้างต้น และไม่รู้เลยว่า ในแต่ละวันลูกค้าแต่ละคนใช้ email อะไรบ้างในการส่งมาทางโรงพยาบาล ลูกค้า 1 คนอาจจะใช้ email 1 หรือ 2 หรือมากกว่านั้น รวมแล้วอาจะเป็น หนึ่งพัน หรือหนึ่งหมืน email ผมไม่สามารถรู้ หรือ list ได้เลย จึงกำหนดให้ email ที่เหลือนั่นอยู่ในกลุ่มของ Individual ครับ จึงอยากเขียนสูตร if ครับ
รบกวนอาจารย์ด้วยครับ
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#16
Post
by snasui » Fri Feb 04, 2022 9:07 pm
snasui wrote: Fri Feb 04, 2022 7:29 pm
สำหรับการเขียนเช่นไฟล์ที่แนบมาก็ต้องแยกให้ได้รายตัวเช่นกันว่าอีเมลไหน Group ไหนเพื่อที่จะเขียนสูตรแยกออกมาได้ และการที่จะบอกว่าอีเมลใดอยู่ Group ใด
จะต้องแจกแจงเป็นรายตัวมาทุกตัว เพื่อที่จะเขียนสูตรกำหนด Group ให้กับ Email นั้น ๆ หรือที่จะมีเพิ่มเติมเข้ามาได้ ถ้าบอกมาไม่ได้ก็เขียนให้ไม่ได้ครับ
กรุณาทำมาตามที่ผมแจ้งไปครับ
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#17
Post
by wisitsakbenz » Sat Feb 05, 2022 9:18 am
เรียน อาจารย์
ทำตามที่อาจารย์บอกแล้วครับ
มันจะติด ตรงที่ Group ของ BDMS กับ internal คือ Email ที่ลงท้ายด้วย bdms.co.th, samitivej.co.th จะอยู่ใน 2 Group นี้ ซึ่งจะเป็น Email ของพนักงานมันมีเยอะมากครับ และ Email List ของ email Group individual นั้น อยู่นอกเหนือจาก email ที่กำหนด Group ทั้งหมด
รบกวนอาจารย์แนะนำด้วยครับ ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#18
Post
by snasui » Sat Feb 05, 2022 9:39 am
ค่อย ๆ ถามตอบกันไปครับ
Email และ Email Group ควรเป็น Master Table ซึ่งโดยปกติแล้ว Email ใด ๆ ควรจะอยู่ Group ใดเพียง Group เดียว
จำเป็นต้อง Clear ประเด็นให้จบก่อนว่าทำไมถึงอยู่ 2 Group แล้วหากต้องการสรุปเป็น Group จะสรุปอย่างไร ต้องออกแบบส่วนนี้ให้เรียบร้อยก่อน อาจจะต้องกำหนด Parent ของ Group คือเป็น Group ใหญ่อีกลำดับเป็นอีกคอลัมน์เพิ่มเติมหรือไม่ ฯลฯ
ที่สำคัญ ถ้าอยู่ 2 Group หรือ หลาย Group จะแยกได้อย่างไรว่า เมื่อใดจะอยู่ Group ไหน กรุณาอธิบายมาอย่างละเอียดครับ
wisitsakbenz
Silver
Posts: 562 Joined: Mon Sep 09, 2019 3:13 pm
Excel Ver: 2013
#19
Post
by wisitsakbenz » Sat Feb 05, 2022 11:16 am
เรียน อาจารย์
Email ที่มีหลาย Group มีแค่ Email ที่ลงท้ายด้วย samitivej.co.th แบ่งเป็นกลุ่มตามภาพ
ไม่แน่ใจว่าผมอธบายอาจารย์ผิดหรือเปล่า ยังไงขอคำแนะนำด้วยนะครับ ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#20
Post
by snasui » Sat Feb 05, 2022 12:32 pm
เท่าที่อ่านคิดว่ายังไม่เข้าใจในสิ่งที่ผมอธิบาย จากโพสต์ล่าสุดก็ไม่ได้แสดงให้เห็นถึงการตอบสิ่งที่ผมถามไปแต่อย่างใด
เพราะไม่ได้เจาะจงลงไปในสิ่งที่เป็นปัญหา กรุณาทำตารางให้เห็นว่า Email ใดที่มีหลาย Group และอยู่ Group ใด แสดงออกมาทุกตัว
เฉพาะที่มีหลาย Group เท่านั้น ตัวที่อยู่ Group เดียวไม่จำเป็นต้องนำมาแสดงในการอธิบายครั้งนี้ นอกจากนั้นอธิบายด้วยว่า ถ้ามีอีเมลนี้เข้ามาในระบบจะใช้หลักการใดเพื่อแยกว่าอยู่ Group ใดมาด้วยครับ
ตารางควรแยกเป็น 2 คอลัมน์ คอลัมน์แรกเป็น Group คอลัมน์ที่ 2 เป็น Email จะได้เห็นชัดเจนว่า Email ใดมีหลาย Group เช่นนี้เป็นต้น ไม่ใช่ดังภาพที่มี 3 คอลัมน์และไม่ได้ระบุว่าคอลัมน์ไหนเป็นรายตัว คอลัมน์ไหนเป็น Group ครับ