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

กรุณาแนบไฟล์ตัวอย่างพร้อม Code ที่เขียนมาเองแล้วจะได้สะดวกในการตอบครับ
การโพสตฺ์ Code เพื่อให้สะดวกต่อการอ่านให้ดูกฎการใช้บอร์ดข้อ 5

ด้านบนครับ
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

กรุณาแนบไฟล์ที่ได้เขียน 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

ตัวอย่าง 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
ขอขอบคุณมากๆเลยค่าาาา
