กระทู้เก่าบอร์ด อ.Yeadram
2,012 3
URL.หัวข้อ /
URL
ขอโค้ดแสดง MsgBox เืมื่่อคิวรี่ไม่มีข้อมูลค่ะ
ขอเรียนถามอาจารย์ดังนี้นะคะ
ก่อนหน้านี้ หนูได้ขอความช่วยเหลือเรื่องการทำคิวรี่ เพื่อหาข้อมูลที่ไม่ซ้ำได้เรียบร้อยแล้วค่ะ
หนูต้องการขยายผลต่ออีกนิดนึงค่ะอาจารย์ คือว่า
เมื่อรันคิวรี่นี้แล้วไม่พบข้อมูลตามเงื่อนไขที่กำหนด อยากให้มี MsgBox รายงานผลสักหน่อยว่า "ไม่มีข้อมูล" อะไรทำนองนี้แหละค่ะ
อยากทราบว่าเราต้องเขียนโค้ดเพื่อดักจับคิวรี่นี้อย่างไรคะ ขอรบกวนอาจารย์อีกครั้งค่ะ
ก่อนหน้านี้ หนูได้ขอความช่วยเหลือเรื่องการทำคิวรี่ เพื่อหาข้อมูลที่ไม่ซ้ำได้เรียบร้อยแล้วค่ะ
หนูต้องการขยายผลต่ออีกนิดนึงค่ะอาจารย์ คือว่า
เมื่อรันคิวรี่นี้แล้วไม่พบข้อมูลตามเงื่อนไขที่กำหนด อยากให้มี MsgBox รายงานผลสักหน่อยว่า "ไม่มีข้อมูล" อะไรทำนองนี้แหละค่ะ
อยากทราบว่าเราต้องเขียนโค้ดเพื่อดักจับคิวรี่นี้อย่างไรคะ ขอรบกวนอาจารย์อีกครั้งค่ะ
3 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R05227
- ถ้าเป็นกรณี SELECT statement ก็ตรวจจาก .RecordCount property ของ Recordset object ที่เป็นตัวเก็บเรคอร์ดเหล่านั้น หรือจะตรวจจาก .EOF property ก็ได้เช่นกัน ตย.เช่น
Dim RS As DAO.Recordset
Set RS = CurrentDB.OpenRecordset("SELECT ...")
If RS.RecordCount = 0 Then ' ไม่มีข้อมูล
หรือ
If RS.EOF Then ... ' ไม่มีข้อมูล
- ถ้าเป็นกรณี INSERT, UPDATE, DELETE statement ก็ให้เช็คจาก RecordsAffected property ของ Database object หรือ QueryDef object แล้วแต่ว่าอ๊อปเจ็คไหนที่เป็นตัวสั่ง .Execute method เพื่อรัน SQL นั้นๆ ค่าที่ได้จะเป็นจำนวนเรคอร์ดที่เป็นผลจากคำสั่ง SQL นั้น ตย.เช่น
Dim DB As DAO.Database
Set DB = CurrentDB
DB.Execute "UPDATE ..."
If DB.RecordsAffected = 0 Then ' ไม่มีข้อมูล
Dim RS As DAO.Recordset
Set RS = CurrentDB.OpenRecordset("SELECT ...")
If RS.RecordCount = 0 Then ' ไม่มีข้อมูล
หรือ
If RS.EOF Then ... ' ไม่มีข้อมูล
- ถ้าเป็นกรณี INSERT, UPDATE, DELETE statement ก็ให้เช็คจาก RecordsAffected property ของ Database object หรือ QueryDef object แล้วแต่ว่าอ๊อปเจ็คไหนที่เป็นตัวสั่ง .Execute method เพื่อรัน SQL นั้นๆ ค่าที่ได้จะเป็นจำนวนเรคอร์ดที่เป็นผลจากคำสั่ง SQL นั้น ตย.เช่น
Dim DB As DAO.Database
Set DB = CurrentDB
DB.Execute "UPDATE ..."
If DB.RecordsAffected = 0 Then ' ไม่มีข้อมูล
3 @R05228
ขอขอบคุณ อาจารย์ทั้งสองท่านค่ะ
หนูจะนำไปทดลองเดี๋ยวนี้เลยค่ะ หากยังติดขัดประการใด หนูจะขอรบกวนเข้ามาถามเพิ่มเติมอีกนะคะ
ขอบคุณค่ะ
หนูจะนำไปทดลองเดี๋ยวนี้เลยค่ะ หากยังติดขัดประการใด หนูจะขอรบกวนเข้ามาถามเพิ่มเติมอีกนะคะ
ขอบคุณค่ะ
Time: 0.5134s
recCNT = DCount(ตัวแปร, คิวรี่)
If recCNT <> 0 Then
Else
Msgbox
End if