snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
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]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Weravong
Member
Posts: 50 Joined: Tue Sep 11, 2018 7:00 pm
#1
Post
by Weravong » Tue Aug 23, 2022 6:50 pm
เรียนสอบถาม การจัดทำลำดับรายงานใหม่โดยอิงจากตาราง Pivot Table โดยตาราง Pivot มีการเรียงลำดับข้อมูลจากมากไปหาน้อยแล้วครับ
เนื่องจากผมติดปัญหาตรงที่ พอจะนำค่าจากตาราง Pivot มาทำตางรางสรุปใหม่ อันดับที่ 1 สามารถทำได้ แต่พอเราจัดอันดับที่ 2 โดยมีข้อมูลจากการ pivot ของอันดับที่ 2 ซึ่งผมไม่สามารถกำหนดสูตรให้ excel ทำการแสดงจุดเริ่มต้นของข้อมูลอันดับที่ 2 ได้ครับ ตามภาพจะเห็นอันดับที่1 เรารู้จุดเริ่มต้นเลย และใช้สูตรจากค่าที่ count มาได้คือ 7 ก็ให้ excel แสดงผลแค่ 7 ค่าตามต้องการได้ครับ แต่พออันดับ 2 ผมไม่สามารถใช้สูตรเดิมเพื่อเริ่มข้อมูลอันดับ 2 ได้ เพราะไม่ทราบว่าจะเริ่มที่ cell ไหน ดังนั้นในไฟล์ตัวอย่างผมจึงใส่สูตรที่ fix บรรทัดไปก่อนครับ จึงอยากทราบวิธีในการค้นหาตำแหน่ง และดึงข้อมูลของอันดับ 2, 3, 4, 5, ....มาวางเรียงตามภาพและไฟล์แนบครับ ขอขอบคุณมากๆครับ
Count_for_Report_Pic.jpg
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 30917 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#2
Post
by snasui » Tue Aug 23, 2022 6:57 pm
ตัวอย่างการปรับสูตรในเซลล์ A5 ครับ
=IF(ROWS($A$5:$A5)>$B$3,"",INDEX(DATA!$J$3:$J$50&", "&DATA!$K$3:$K$50,MATCH($A$3,DATA!$I$3:$I$50,0)-1+ROWS(A$5:A5)))
Enter > Copy ลงด้านล่าง
Weravong
Member
Posts: 50 Joined: Tue Sep 11, 2018 7:00 pm
#3
Post
by Weravong » Wed Aug 24, 2022 8:04 am
snasui wrote: Tue Aug 23, 2022 6:57 pm
ตัวอย่างการปรับสูตรในเซลล์ A5 ครับ
=IF(ROWS($A$5:$A5)>$B$3,"",INDEX(DATA!$J$3:$J$50&", "&DATA!$K$3:$K$50,MATCH($A$3,DATA!$I$3:$I$50,0)-1+ROWS(A$5:A5)))
Enter > Copy ลงด้านล่าง
ขอบพระคุณมากๆครับ
Weravong
Member
Posts: 50 Joined: Tue Sep 11, 2018 7:00 pm
#4
Post
by Weravong » Wed Aug 24, 2022 8:15 am
เรียน คุณ snasui ครับ "Enter > Copy ลงด้านล่าง" คือ ทำอย่างไรครับ พอดีจะนำสูตรดังกล่าวไปวางที่ A21 หรือในส่วนของผลลัพท์อันดับที่ 2 ครับ โดยผมทำการ copy สูตรด้านบนนี้ครับ แล้วทำการแก้ ฺฺฺB13 เป็น B19 ครับ ขอบคุณครับ
=IF(ROWS($A$21:$A21)>$B$19,"",INDEX(DATA!$J$3:$J$50&", "&DATA!$K$3:$K$50,MATCH($A$3,DATA!$I$3:$I$50,0)-1+ROWS(A$21)))
snasui
Site Admin
Posts: 30917 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#5
Post
by snasui » Wed Aug 24, 2022 9:04 am
Weravong wrote: Wed Aug 24, 2022 8:15 am
"Enter > Copy ลงด้านล่าง" คือ ทำอย่างไรครับ
Enter คือ คีย์สูตรเสร็จแล้วกดแป้น Enter ที่ต้องเขียนกำกับเพราะสูตรใน Excel สามารถกดได้ในแบบ Enter และ Ctrl+Shift+Enter
Copy ลงด้านล่างคือ Copy สูตรในเซลล์ที่คีย์ไปแล้วนั้นลงไปด้านล่าง จะ Copy ลงไปกี่เซลล์ก็แล้วแต่ความต้องการครับ
Weravong wrote: Wed Aug 24, 2022 8:15 am
พอดีจะนำสูตรดังกล่าวไปวางที่ A21 หรือในส่วนของผลลัพท์อันดับที่ 2 ครับ
จะ Copy ไปยังช่วงอื่นก็ต้องปรับเซลล์หรือช่วงเซลล์ในสูตรโดยอ้างอิงตำแหน่งให้ถูกต้อง ดู
ตัวอย่าง ในสูตรเดิมว่าอ้างอิงไว้อย่างไรเพื่อจะได้อ้างอิงได้ถูกต้อง
Weravong
Member
Posts: 50 Joined: Tue Sep 11, 2018 7:00 pm
#6
Post
by Weravong » Wed Aug 24, 2022 9:29 am
snasui wrote: Wed Aug 24, 2022 9:04 am
Weravong wrote: Wed Aug 24, 2022 8:15 am
"Enter > Copy ลงด้านล่าง" คือ ทำอย่างไรครับ
Enter คือ คีย์สูตรเสร็จแล้วกดแป้น Enter ที่ต้องเขียนกำกับเพราะสูตรใน Excel สามารถกดได้ในแบบ Enter และ Ctrl+Shift+Enter
Copy ลงด้านล่างคือ Copy สูตรในเซลล์ที่คีย์ไปแล้วนั้นลงไปด้านล่าง จะ Copy ลงไปกี่เซลล์ก็แล้วแต่ความต้องการครับ
Weravong wrote: Wed Aug 24, 2022 8:15 am
พอดีจะนำสูตรดังกล่าวไปวางที่ A21 หรือในส่วนของผลลัพท์อันดับที่ 2 ครับ
จะ Copy ไปยังช่วงอื่นก็ต้องปรับเซลล์หรือช่วงเซลล์ในสูตรโดยอ้างอิงตำแหน่งให้ถูกต้อง ดู
ตัวอย่าง ในสูตรเดิมว่าอ้างอิงไว้อย่างไรเพื่อจะได้อ้างอิงได้ถูกต้อง
เรียน คุณ snasui ที่เคารพครับ ได้แล้วครับ ขอบคุณมากๆครับ
=IF(ROWS($A$21:$A21)>$B$19,"",INDEX(DATA!$J$3:$J$50&", "&DATA!$K$3:$K$50,MATCH($A$19,DATA!$I$3:$I$50,0)-1+ROWS(A$21:A21)))