Announcement

Collapse

ยินดีต้อนรับสู่ Excel Expert Training Forum

กฏกติกาของฟอรัม: แจ้งชื่อและนามสกุลจริงในการสมัครสมาชิก - ตั้งชื่อกระทู้ให้ตรงกับปัญหาที่ถาม - เขียนอธิบายคำถามทั้งในตัวกระทู้และในแฟ้มแนบ - ห้ามใช้คำว่า อ่ะ คับ คำผวน - ตั้งชื่อแฟ้มเป็นภาษาอังกฤษให้สื่อถึงปัญหา - อย่าระบุชื่อให้คนใดเป็นผู้ตอบ - งดให้ความร่วมมือหรือช่วยกระทู้ที่ละเมิดกฏของฟอรัม
See more
See less

ท่านไหนสามารถทำ unique list เป็น array formula ได้บ้างครับ?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ท่านไหนสามารถทำ unique list เป็น array formula ได้บ้างครับ?

    ท่านไหนเคยทำ unique list ไม่รวม cell ว่าง เป็น array formula ได้บ้างครับ
    ปกติเห็น count row ตามบันทัดเพื่อเลื่อน record ในการหาค่าซ้ำ เลยจำเป็นต้องเขียนสูตรแล้วคัดลอกลงมาทีละบันทัดเอา บางกรณีอาจไม่สะดวกในการทำแบบนั้นครับ ใคร create สูตรนี้ได้น่าจะช่วยในการทำงานได้เยอะเลยครับ (พยายามมั่วมานานแต่ยังไม่สำเร็จ 555) ฝากรบกวนช่วย share idea ทีครับผม ขอบคุณจ้า...

    ตัวอย่าง
    https://www.get-digital-help.com/200...remove-blanks/

  • #2
    A2=INDEX(ข้อมูล, MATCH(0, IF(ISBLANK(ข้อมูล), 1, COUNTIF(A$1:$A1, ข้อมูล)), 0)) Ctrl+Shift+Enter
    แล้วก๊อปปี้ลงข้างล่างครับ

    Comment


    • #3
      ขอบคุณครับ สงสัยต้องนั่งคิดกันต่อ อยากได้แบบ เลือก 100 cell ใส่สูตร Ctrl+Shift+Enter แล้วจบ
      ไม่รู้จะเป็นไปได้รึเปล่านะครับ

      Comment


      • #4
        อยากทราบเหตุผลว่าทำไมถึงต้องการทำแบบนั้นครับ
        ผมนึกประโยชร์ไม่ออก

        Comment


        • #5
          คือในความคิดตัวเอง การทำงานของสูตร Array น่าจะใช้ทรัพยากรในการคำนวณน้อยกว่าให้ ดำนินการเป็น cell แยกไป
          และเพื่อความสะดวกในการกำหนดช่วง กรณีเกิด record ใหม่ ซึ่งอาจจะใช้ร่วมกับ Dynamic range ได้โดยไม่ต้องมาปรับสูตรใหม่หลายรอบครับ

          ถ้า Copy แล้วลากยาวลงมาอาจจะสะดวกในตอนแรกหรือผู้ Design แต่เมื่อในไปให้ user ใช้อาจจะย้อนกลับมาให้ผู้ design กลับมาปรับให้ใหม่เป็นระยะๆกรณี Requirement เปลี่ยนแปลง รึขนาดข้อมูลเปลี่ยนแปลงไปครับ ถ้ามี idea อื่นดีกว่าฝากชี้แนะด้วยครับ คืออยากจะใช้ Application พื้นฐานกันให้เต็มประสิทธิภาพก่อนข้ามไปใช้ระบบ Data base ครับผม

          Comment


          • #6
            เรื่องช้าเร็วนี่ตอบยากครับเพราะยังนึกสูตรตามที่บอกไม่ออก
            ถ้านึกออกบอกด้วยครับอยากลองเหมือนกัน
            แต่โดยความเห็นผมว่าคงไม่ได้ช่วยให้ต่างกันมากมาย เผลอๆจะใช้การคำนวณเยอะกว่าแบบนี้อีก

            ส่วนเรื่อง dynamic range สูตรที่ให้ไปมีช่วงข้อมูลเดียวคือ "ข้อมูล" สามารถสร้างได้อยู่แล้วไม่ติดขัดอะไรครับ

            ปล.การทำเป็น application ผมนิยมใช้ VBA สร้าง unique list มากกว่าครับ เร็วกว่ากันเยอะเลย

            Comment


            • #7
              =INDEX(ข้อมูล,SMALL(IF(IF(ISBLANK(ข้อมูล),FALSE,MATCH(ข้อมูล,ข้อมูล,0)=1+ROW(ข้อมูล)-MIN(ROW(ข้อมูล))),1+ROW(ข้อมูล)-MIN(ROW(ข้อมูล))),1+ROW(ข้อมูล)-MIN(ROW(ข้อมูล))))

              Ctrl+Shift+Enter
              Last edited by Legir; 11 Oct 2018, 23:35.

              Comment


              • #8
                ถ้าดูตามสูตรที่ให้มา ยังไงก็ประมวลผลมากกว่าสูตรที่ผมให้ไปแน่ๆ ไม่น่าจะไวกว่าเดิมนะครับ
                สงสัยต้องลองข้อมูลเยอะๆแล้วใช้ โปรแกรม benchmark มาจับความไวดู

                Comment

                Working...
                X