Page 1 of 1

สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Fri May 26, 2017 3:20 pm
by sarun jaroenun
อยาให้แสดงรายชื่อ ตามที่เรากำหนดครับ เช่น ผมมีข้อมูล คือ มีชื่อ เลขบัตรประชาชน อำเภอ จังหวัด ครับ

เมื่อต้องการรายชื่อที่ 1-10 เรากรอกใส่ช่อง แล้วรายชื่อ 1-10 ก็จะขึ้นมา เช่น เอาลำดับ 20-25 ก็จะขึ้นมาครับ

ขอบคุณมากครับ

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Fri May 26, 2017 4:04 pm
by trirongcop
Sheet2 Column B : =IFERROR(INDEX(Sheet1!C:C,MATCH(Sheet2!$A:$A,Sheet1!$A:$A,0)),"-")
แล้วลากไปทางซ้ายและลงด้านล่างครับ

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Fri May 26, 2017 5:09 pm
by linzhengli
และหากเป็นระบบ 2003 ใช้สูตรเช่นไรครับ

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Fri May 26, 2017 7:15 pm
by snasui
linzhengli wrote:และหากเป็นระบบ 2003 ใช้สูตรเช่นไรครับ
:D ตัวอย่างสุตรสำหรับ Excel 2003 ครับ

=IF(COUNTIF(Sheet1!$A$2:$A$100,$A2)=0,"-",INDEX(Sheet1!B$2:B$100,MATCH($A2,Sheet1!$A$2:$A$100,0)))

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Fri May 26, 2017 8:17 pm
by boat
และหาก ผมต้องการให้มีช่องสำหรับใส่ตัวเลข เช่น ถ้าอยากได้รายชือที่ 1-10 ก็กรอก ตัวเลขในช่องนั้น กรอก 1-10 เข้าไป แล้วให้รายชื่อ 1-10 ออกมา

ขอบคุณครับ

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Fri May 26, 2017 10:40 pm
by snasui
:D แนบตัวอย่างไฟล์ตามความต้องการนี้มาใหม่ กรอกตัวอย่างคำตอบที่ถูกต้องมาด้วยจะได้เช้าใจตรงกันและสะดวกในการตอบครับ

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Sat May 27, 2017 9:19 am
by linzhengli
ขอบคุณเป็นอย่างสูงสำหรับคำตอบ มา ณ โอกาสนี้

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Mon May 29, 2017 10:27 am
by sarun jaroenun
ขอบคุณมากครับ แต่ยังไม่ได้ครับ ผมอยากได้เหมือน ความคิดเห็นที่ 5 ผมขออนุญาต โพสต์ตั้งกระทู้ใหม่น่ะครับ

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Mon May 29, 2017 10:33 am
by snasui
:D เรื่องเดียวกันให้ถามในกระทู้เดิม ไม่จำเป็นต้องตั้งกระทู้ใหม่ อธิบายและทำตัวอย่างในสิ่งที่ต้องการให้ชัดเจนจะได้สะดวกต่อการทำความเข้าใจครับ

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Mon May 29, 2017 2:18 pm
by sarun jaroenun
คือผมอยากได้สูตร ให้แสดงรายชื่อตามที่เรากรอกตัวเลข สมมุติผมมี รายชื่อ เลขบัตร ตำบล อำเภอ จังหวัด, ผมอยากให้มีช่อง ช่องหนึ่งสำหรับใส่ตัวเลขที่เราต้องการ อย่างเช่น ผมมีอยู่ 100 รายชื่อ ผมอยากแสดง รายชื่อที่ 1 - 10 ผมก็จะกรอกใส่ช่องตัวเลข ว่า 1-10 รายชื่อ 1-10 ก็จะปรากฏขึ้นมา ผมอยากได้รายชื่อที่ 20-25 ผมก็กรอกใส่ช่องตัวเลขนั้น ว่า 20-25 รายชื่อ 20-25 ก็จะปรากฏขึ้นมา

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Mon May 29, 2017 2:54 pm
by snasui
:D ต้องการให้ข้อมูลแสดงที่ชีตใด เซลล์ใด ครับ หากแสดงในที่เดิมสามารถใช้ Advance Filter ได้ครับ

ตัวอย่างาการใช้ Advanced Filter ใน Excel 2010 ครับ
  1. เซลล์ K1:L1 คีย์คำว่า เลขแปลง ทั้งสองเซลล์
  2. เซลล์ K2:L2 คีย์ >=1, <=10 ตามลำดับเพื่อจะเป็นการกรองเอาเฉพาะค่าที่ มากกว่าหรือเท่ากับ 1 และน้อยกว่าหรือเท่ากับ 10 ต้องการค่าใดสามารถเปลี่ยนค่าที่ K2:L2 ได้ตามต้องการ
  3. คลิกเซลล์ใด ๆ ในฐานข้อมูล > เข้าเมนู Data > Advanced > ช่อง Criteria ให้คลุมเลือก K1:L2 > OK

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Mon May 29, 2017 3:13 pm
by sarun jaroenun
ให้แสดง อยู่ใน sheet 2 ครับ

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Mon May 29, 2017 3:17 pm
by snasui
:D ทำตามที่ผมโพสต์ เลือก Sheet2 แล้วเข้าเมนูจาก Sheet2

ถ้าต้องการใช้สูตร เขียนมาให้ชัดเจนว่าตำแหน่งที่จะคีย์ข้อมูลคือเซลล์ใด ตำแหน่งที่ต้องการแสดงผลคือเซลล์ใด

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Mon May 29, 2017 3:40 pm
by sarun jaroenun
ใช้สูตรครับ

ตำแหน่งในการคีย์ข้อมูล คือ B6 ตำแหน่งแสดงข้อมูลคือ E9-L9 ครับ

Re: สูตรแสดงผลข้อมูล ตามจำนวนที่เราใส่ เช่นให้แสดงรายชื่อ 1-10

Posted: Mon May 29, 2017 3:59 pm
by snasui
:D เนื่องจากสูตรนี้ซ้อนกันเกินกว่าความสามารถของไฟล์ .xls ให้เซฟไฟล์เป็น .xlsx คือเป็นไฟล์สำหรับ Excel Version 2007 ขึ้นไป

จากนั้นเซลล์ E9 คีย์สูตรตามด้านล่างครับ

=IF($B$6="","",IFERROR(INDEX(Sheet1!A$2:A$117,SMALL(IF(ISNUMBER(MATCH(Sheet1!$A$2:$A$117,IF(ISNUMBER(FIND("-",$B$6)),ROW(INDIRECT(SUBSTITUTE($B$6,"-",":"))),$B$6),0)),ROW(Sheet1!A$2:A$117)-ROW(Sheet1!A$2)+1),ROWS(E$9:E9))),""))

Ctrl+Shift+Enter > Copy ไปด้านขวาและลงด้านล่าง

!
Note: Ctrl+Shift+Enter เป็นการสร้างสูตร Array โดยสามารถเลือกดำเนินการตามข้อ 1 หรือ 2 ด้านล่าง
  1. กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
  2. กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน จากนั้นกดแป้น Ctrl และ Shift พร้อมกันค้างไว้แล้วตามด้วย Enter เพื่อสร้างเป็นสูตร Array
  3. หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้ไม่สามารถคีย์เข้าไปเอง จะต้องมาด้วยการกดแป้น Ctrl+Shift+Enter เท่านั้น ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
  4. การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง