Page 1 of 1

Msgbox เงื่อนไขเปรียบเทียบคอลัมน์ 2 คอลัมน์

Posted: Mon Jul 23, 2018 3:00 pm
by eunmii
สอบถามค่ะ ต้องการทำ Msgbox เงื่อนไขเปรียบเทียบคอลัมน์ 2 คอลัมน์
เช่น ถ้า ค่าใน column A > column B ให้ถึงกล่องข้อความแจ้งเตือนค่ะ
โดยค่าใน column B มาจากการใช้สูตร Vlookup ค่ะ
ทดลองใช้ code ดังกล่าวขึ้นกล่องข้อความแจ้งเตือนสำหรับคอลัมน์ใดคอลัมน์หนึ่งเท่านั้นอ่ะค่ะ

Private Sub Worksheet_Change(ByVal Target As Range)
Dim a, b
a = Sheet6.Range("N2")
b = Sheet6.Range("O2")
If a > b Or a = b Then
MsgBox (" MAX DOSE")

End If

End Sub

แต่เมื่อลองเปลี่ยนเป็นให้สำหรับทั้งคอลัมน์ เช่น
a = Sheet6.Range("N2:N") ไม่สามารถทำได้ค่ะ

รบกวนขอความกรุณาแนะนำเพิ่มเติมด้วยนะคะ

Re: Msgbox เงื่อนไขเปรียบเทียบคอลัมน์ 2 คอลัมน์

Posted: Mon Jul 23, 2018 8:43 pm
by snasui
:D กรุณาแนบไฟล์ตัวอย่างพร้อม Code ที่เขียนมาเองแล้วจะได้สะดวกในการตอบครับ

การโพสตฺ์ Code เพื่อให้สะดวกต่อการอ่านให้ดูกฎการใช้บอร์ดข้อ 5 :roll: ด้านบนครับ

Re: Msgbox เงื่อนไขเปรียบเทียบคอลัมน์ 2 คอลัมน์

Posted: Tue Jul 24, 2018 12:30 am
by eunmii
ขอโทษด้วยค่ะ ต้องการเปรียบเทียบระหว่าง 2 คอลัมน์ คือ N,O
ถ้าค่าในคอลัมน์ N มากกว่า ค่าในคอลัมน์ O ต้องการให้ขึ้นข้อความแจ้งเตือนค่ะ
แต่ไม่สามารถใส่สูตร range กำหนดช่วงได้ค่ะ

Code: Select all

Private Sub Worksheet_Change(ByVal Target As Range)
Dim a, b
a = Sheet6.Range("N2:N")
b = Sheet6.Range("O2:O")
If a > b Or a = b Then MsgBox (" MAXIMUM")
End If
End Sub
รบกวนขอคำแนะนำเพิ่มเติมด้วยนะคะ

Re: Msgbox เงื่อนไขเปรียบเทียบคอลัมน์ 2 คอลัมน์

Posted: Tue Jul 24, 2018 7:01 pm
by snasui
:D กรุณาแนบไฟล์ที่ได้เขียน Code นั้นเอาไว้แล้วครับ

ไฟล์ที่จะแนบ Code ได้จะต้องมีนามสกุลเป็น .xlsm เป็นอย่างน้อย ไม่ใช่ .xlsx ครับ

Re: Msgbox เงื่อนไขเปรียบเทียบคอลัมน์ 2 คอลัมน์

Posted: Wed Jul 25, 2018 2:14 am
by eunmii
ขอโทษอีกครั้งค่ะ แนบไฟล์ใหม่แล้วค่ะ

Code: Select all

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim a, b
a = Range("N2:N499")
b = Range("O2:O499")
    If a > b Then
    MsgBox (" MAXIMUM")
     End If
End Sub

Re: Msgbox เงื่อนไขเปรียบเทียบคอลัมน์ 2 คอลัมน์

Posted: Wed Jul 25, 2018 6:17 am
by snasui
:D ตัวอย่าง Code ครับ

Code: Select all

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim a As Range, b As Range
    If Target.Count > 1 Then Exit Sub
    If Intersect(Target, Range("e2:m499")) Is Nothing Then Exit Sub
    Set a = Range("N" & Target.Row)
    Set b = Range("O" & Target.Row)
    If a >= b Then
        MsgBox "MAXIMUM"
    End If
End Sub

Re: Msgbox เงื่อนไขเปรียบเทียบคอลัมน์ 2 คอลัมน์

Posted: Thu Jul 26, 2018 12:34 am
by eunmii
ขอขอบคุณมากๆเลยค่าาาา :D