Page 1 of 1

การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Thu Nov 22, 2018 4:58 pm
by Xengsue
สวัสดีครับ อาจารย์
ผมมีคำถามที่อยากจะถาม อาจารย์ ว่า
ผมมีข้อมูลเป็นชุดฯติดต่อกันเยอะมากเลยป้อนสูตรใส่ไม่ไหว
ผมเลยต้องการค้นหาว่า cell ไหนบ้างที่เป็นข้อมูลรวม แล้วผมจะ sum ข้อมูลนั้นให้เป็นชุดฯ
ดั่งรูป ผมต้องทำยังไง ผมจนหนทางแล้วช่วยผมที
ขอบคุณครับ

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Thu Nov 22, 2018 5:29 pm
by Bo_ry
แบบสูตร แต่ต้องอยู่ column D

D2 ลากลง
=IF(B2="total",SUM(INDEX(C1:C$2,MATCH(2,INDEX(1/(A1:A$2<>""),))):C1),"")

แบบ subtotal อยู่ sheet subtotal
เลือก A1:A26 > กด F5 > special > blank > พิมพ์ = กดลูกษรขึ้น กด Ctrl+Enter

Menu > Data > Subtotal > Change in No > funciton Sum > add subtotal to Money
>check summary below data > Ok

Book2.xlsm

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Thu Nov 22, 2018 5:52 pm
by Xengsue
Bo_ry wrote: Thu Nov 22, 2018 5:29 pm แบบสูตร แต่ต้องอยู่ column D

D2 ลากลง
=IF(B2="total",SUM(INDEX(C1:C$2,MATCH(2,INDEX(1/(A1:A$2<>""),))):C1),"")

แบบ subtotal อยู่ sheet subtotal
เลือก A1:A26 > กด F5 > special > blank > พิมพ์ = กดลูกษรขึ้น กด Ctrl+Enter

Menu > Data > Subtotal > Change in No > funciton Sum > add subtotal to Money
>check summary below data > Ok
ขอบคุณครับ
แต่ที่ต้องการคือไม่ใช่ให้แยกไปอยู่ช่อง D ครับ
คืออยากให้มันอยู่ที่ฯ remark ไว้ครับ

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Thu Nov 22, 2018 6:20 pm
by Xengsue
คือต้องการแบบค้นหา address ของ cell ที่จะ sum ตัวแรกแล้วป้อนสูตรใส่ และก็ทำการ copy สูตรไปที่ address ของ cell ที่จะทำการ sum ตัวอื่นฯครับ

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Thu Nov 22, 2018 8:47 pm
by snasui
Xengsue wrote: Thu Nov 22, 2018 5:52 pm แต่ที่ต้องการคือไม่ใช่ให้แยกไปอยู่ช่อง D ครับ
คืออยากให้มันอยู่ที่ฯ remark ไว้ครับ
:D ก่อนที่จะเป็นคำว่า "ผลรวมที่ต้องการต้องอยู่ที่นี้" เป็นค่าอะไรอยู่ก่อนหน้านี้หรือไม่หรือเป็นเซลล์ว่างครับ :?:

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Fri Nov 23, 2018 12:10 am
by Xengsue
[/quote]
ก่อนที่จะเป็นคำว่า "ผลรวมที่ต้องการต้องอยู่ที่นี้" เป็นค่าอะไรอยู่ก่อนหน้านี้หรือไม่หรือเป็นเซลล์ว่างครับ :?:
[/quote]

"ผลรวมที่ต้องการต้องอยู่ที่นี้" เป็นช่องว่าง ที่ผมจะป้อนสูตร sum เข้าไปครับ

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Fri Nov 23, 2018 12:16 am
by Xengsue
ที่ต้องการก็คือ ผมต้องการค้นหา cell ที่จะผมพิม คำว่า "ผลรวมที่ต้องการต้องอยู่ที่นี้" แล้วจะป้อนสูตร sum ใส่ลงไปครับ แต่ผมไม่รู้จะหา cell นั้นด้วยวิธีใดก็เลยเข้ามาถาม

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Fri Nov 23, 2018 8:25 am
by Bo_ry
หาตำแหน่ง

E1 ลากไปทางขวา
=IFERROR("C"&AGGREGATE(15,6,ROW($B$1:$B$99)/($B$1:$B$99="total"),COLUMNS($E1:E1)),"")

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Fri Nov 23, 2018 11:02 am
by Xengsue
Bo_ry wrote: Fri Nov 23, 2018 8:25 am หาตำแหน่ง

E1 ลากไปทางขวา
=IFERROR("C"&AGGREGATE(15,6,ROW($B$1:$B$99)/($B$1:$B$99="total"),COLUMNS($E1:E1)),"")
ขอบคุณมากครับ
แต่ยังไม่ตรงกับความต้องการ
พูดง่ายฯคือ ผมต้องการที่จะใส่สูตร sum เข้าไปใน cell C5 C12 C16 C22 C26 ทีเดียวเลยนะครับโดยไม่ต้องมาเลื่อนป้อนใส่ทีละ cell ครับ

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Fri Nov 23, 2018 9:08 pm
by snasui
:D ใช้การ Filter มาช่วยได้ครับ
  1. ไปที่ Sheet1 > คลิก A1 > เข้าเมนู Data > Filter
  2. คลิก Dropdown ที่ B1 > เลือก Total
  3. คลุมคอลัมน์ C > กดแป้น F5 > Special > Visible cells only > กดแป้น Delete
  4. เข้าเมนู Home > ไปที่กลุ่มเมน Editing > คลิก AutoSum (หรือกดแป้น Alt+=)
  5. ปลดการ Filter ทิ้งไป

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Sat Nov 24, 2018 4:18 pm
by Xengsue
snasui wrote: Fri Nov 23, 2018 9:08 pm :D ใช้การ Filter มาช่วยได้ครับ
  1. ไปที่ Sheet1 > คลิก A1 > เข้าเมนู Data > Filter
  2. คลิก Dropdown ที่ B1 > เลือก Total
  3. คลุมคอลัมน์ C > กดแป้น F5 > Special > Visible cells only > กดแป้น Delete
  4. เข้าเมนู Home > ไปที่กลุ่มเมน Editing > คลิก AutoSum (หรือกดแป้น Alt+=)
  5. ปลดการ Filter ทิ้งไป
ขอบคุณ อาจารย์มากครับ ที่เข้ามาช่วย
แต่ยังไม่ใช่ความต้องการครับ
แล้วตอนนี้ผมก็ใช้วิธีใช้ VBA ป้อนสูตเข้าไป ตอนนี้เลยทำได้ตามต้องการแล้วนะครับ

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Sat Nov 24, 2018 10:04 pm
by Xengsue
snasui wrote: Fri Nov 23, 2018 9:08 pm :D ใช้การ Filter มาช่วยได้ครับ
  1. ไปที่ Sheet1 > คลิก A1 > เข้าเมนู Data > Filter
  2. คลิก Dropdown ที่ B1 > เลือก Total
  3. คลุมคอลัมน์ C > กดแป้น F5 > Special > Visible cells only > กดแป้น Delete
  4. เข้าเมนู Home > ไปที่กลุ่มเมน Editing > คลิก AutoSum (หรือกดแป้น Alt+=)
  5. ปลดการ Filter ทิ้งไป
นี้ครับ ผลงานที่ทำ กว่าจะทำได้
ฝากอาจารย์ช่วยดูหน่อยว่า
สามารถที่จะย่อ code vba ให้สั้นลงกว่านี้ได้ไหม และ ฝากไว้ด้วยเพื่อมีคนที่ต้องการเหมือนผมครับ

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Sat Nov 24, 2018 11:14 pm
by snasui
:D ตัวอย่างการ Loop เพื่อจะวางยอดรวมครับ

Code: Select all

Dim rall As Range, r As Range, sum As Double
With Worksheets("WORK")
    Set rall = .Range("l9", .Range("l" & .Rows.Count).End(xlUp))
    For Each r In rall
        If r.Value <> "TOTAL" Then
            sum = sum + Val(r.Offset(0, 13).Value)
        Else
            r.Offset(0, 13).Value = sum
            sum = 0
        End If
    Next r
End With

Re: การค้นหา cell ด้วยเงื่อนไขเพื่อ sum

Posted: Sun Nov 25, 2018 7:13 pm
by Xengsue
snasui wrote: Sat Nov 24, 2018 11:14 pm :D ตัวอย่างการ Loop เพื่อจะวางยอดรวมครับ

Code: Select all

Dim rall As Range, r As Range, sum As Double
With Worksheets("WORK")
    Set rall = .Range("l9", .Range("l" & .Rows.Count).End(xlUp))
    For Each r In rall
        If r.Value <> "TOTAL" Then
            sum = sum + Val(r.Offset(0, 13).Value)
        Else
            r.Offset(0, 13).Value = sum
            sum = 0
        End If
    Next r
End With
ขอบคุณมากครับ