Page 1 of 1
แจ้งเตือน MsgBox เมื่อสูตร vlookup ขึ้น #N/A
Posted: Tue Nov 08, 2016 7:49 pm
by akranan
สวัสดีครับ
ช่อง C10:J203 จะมีสูตร vlookup อยู่ แต่ถ้าสูตร error หรือ หาค่าไม่เจอจะขึ้น #N/A
ผมอยากให้แจ้งเตือนเมื่อใน cell แสดง #N/A แต่ไม่มีอะไรเกิดขึ้นเลยครับ
ไม่ทราบว่า code นี้ผิดตรงส่วนไหนครับ
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = Range("C10:J203").Address Then
If Range("C10:J203").Value = "#N/A" Then
MsgBox "เกิดข้อผิดพลาด"
End If
End If
End Sub
ขอบคุณครับ
Re: แจ้งเตือน MsgBox เมื่อสูตร vlookup ขึ้น #N/A
Posted: Tue Nov 08, 2016 8:18 pm
by snasui

แนบไฟล์ตัวอย่างมาด้วยเพื่อสะดวกต่อการตอบครับ
Re: แจ้งเตือน MsgBox เมื่อสูตร vlookup ขึ้น #N/A
Posted: Tue Nov 08, 2016 8:33 pm
by akranan
ผมได้แนบไฟล์ตัวอย่างแล้วครับ
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = Range("A9:C20").Address Then
If Range("A9:C20").Value = "#N/A" Then
MsgBox "ผิดพลาด"
End If
End If
End Sub
Re: แจ้งเตือน MsgBox เมื่อสูตร vlookup ขึ้น #N/A
Posted: Tue Nov 08, 2016 8:55 pm
by snasui

ตัวอย่าง Code ตามด้านล่างครับ
Code: Select all
If Not Intersect(Target, Range("A9:C20")) Is Nothing Then
If Application.WorksheetFunction.IsNA(Target) Then
MsgBox "à¡Ô´¢éͼԴ¾ÅÒ´"
End If
End If
Re: แจ้งเตือน MsgBox เมื่อสูตร vlookup ขึ้น #N/A
Posted: Tue Nov 08, 2016 8:59 pm
by Serverchita
ลอง Code นี้ดูครับ
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error GoTo NotNA
Set ena = Nothing
For Each r In ActiveSheet.Range("A9:C20") 'UsedRange
If r.Text = "#N/A" Then
MsgBox "¢éÍÁÙżԴ¾ÅÒ´", vbCritical
If ena Is Nothing Then
Set ena = r
Else
Set ena = Union(ena, r)
End If
End If
Next
ena.Select
Exit Sub
NotNA:
End Sub
Re: แจ้งเตือน MsgBox เมื่อสูตร vlookup ขึ้น #N/A
Posted: Tue Nov 08, 2016 9:56 pm
by akranan
ขอบคุณมากๆครับ