Page 1 of 1

VBA Do until จนกระทั่งได้เงื่อนไขที่ต้องการค่ะ

Posted: Wed Aug 07, 2019 3:26 pm
by JAG
สวัสดีค่ะ
ต้องการให้เซลล์แสดงค่าตาม 2 เงื่อนไขที่กำหนด
1. คอลัมน์ A มีคำว่า SELL
2. คอลัมน์ C มีค่ามากกว่า E2
ถ้าเป็นจริง ให้แสดงค่า จากคอลัมน์ C ใดๆ ที่ G2 ค่ะ

คำตอบเท่ากับ 274 ค่ะ
ลองเขียน code vba มาแล้วแต่ไม่รู้ผิดตรงไหน ต้องเขียนอย่างไรถึงถูกต้องคะ
ขอบคุณมากค่ะ

Re: VBA Do until จนกระทั่งได้เงื่อนไขที่ต้องการค่ะ

Posted: Wed Aug 07, 2019 8:07 pm
by snasui
:D ตัวอย่าง Code ครับ

Code: Select all

Sub test()
    Dim i As Integer
    i = 2
    Do Until i > 607
        a = Range("A" & i).Value
        b = Range("C" & i).Value
        C = Range("E2").Value
        If a = "SELL" And b > C Then
            Range("G2") = Range("C" & i).Value
            Exit Do
        End If
        i = i + 1
    Loop
End Sub

Re: VBA Do until จนกระทั่งได้เงื่อนไขที่ต้องการค่ะ

Posted: Wed Aug 07, 2019 9:54 pm
by JAG
ได้แล้วค่ะ ขอบคุณมากนะคะ 🙌🙌

Re: VBA Do until จนกระทั่งได้เงื่อนไขที่ต้องการค่ะ

Posted: Wed Aug 07, 2019 10:30 pm
by JAG
ขอคำแนะนำเพิ่มเติมอีกนิดนะคะ ลองปรับ code เป็นแบบนี้ คำตอบไม่แสดงค่ะ ต้องแก้เพิ่มเติมตรงไหนบ้างคะ

Code: Select all

Sub test()
Dim i As Integer
    i = 2
    C = Range("E" & i).Value
    Result = Range("G" & i)
    
    Do Until i > 607
        a = Range("A" & i).Value
        b = Range("C" & i).Value
        
        If a = "SELL" And b > C Then
            Result = Range("C" & i).Value
            Exit Do
        End If
        i = i + 1
        Loop
    End Sub


Re: VBA Do until จนกระทั่งได้เงื่อนไขที่ต้องการค่ะ

Posted: Wed Aug 07, 2019 10:34 pm
by snasui
:D กรุณาระบุสิ่งที่ต้องการมาด้วยว่าต้องการจะทำอะไร ต้องการให้ได้ผลลัพธ์ตรงไหน มีค่าเป็นเท่าใด

การปรับ Code ใหม่จะต้องมีเป้าหมายเสมอ ถ้าโค้ดที่ได้รับคำตอบไปนั้นทำงานถูกต้องแล้วก็ไม่จำเป็นต้องปรับครับ

Re: VBA Do until จนกระทั่งได้เงื่อนไขที่ต้องการค่ะ

Posted: Thu Aug 08, 2019 12:17 am
by JAG
โอเคค่ะ ขอบคุณนะคะ