I have a query that returns records and these are then emailed by using a macro. Is there a way for the macro not to send the email if there are no records?
Is there an On No Records event you can use? Alternatively, you'll have to do it in code.
DAO version (suits Access 97):
Code:
Sub CheckForRecords()
Dim dbs As Database
Dim rst As Recordset
Dim qdf As Querydef
Set dbs=CurrentDB()
Set qdf=dbs.Querydefs("Yourqueryname")
Set rst=qdf.OpenRecordset(dbDynaset)
rst.MoveFirst
If not rst.EOF then 'there is at least one record
...insert code to email the records
Else
MsgBox "No records found!"
End If
We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel
Which adblocker are you using?
Disable AdBlock
Follow these easy steps to disable AdBlock
1)Click on the icon in the browser’s toolbar. 2)Click on the icon in the browser’s toolbar. 2)Click on the "Pause on this site" option.
Go back
Disable AdBlock Plus
Follow these easy steps to disable AdBlock Plus
1)Click on the icon in the browser’s toolbar. 2)Click on the toggle to disable it for "mrexcel.com".
Go back
Disable uBlock Origin
Follow these easy steps to disable uBlock Origin
1)Click on the icon in the browser’s toolbar. 2)Click on the "Power" button. 3)Click on the "Refresh" button.
Go back
Disable uBlock
Follow these easy steps to disable uBlock
1)Click on the icon in the browser’s toolbar. 2)Click on the "Power" button. 3)Click on the "Refresh" button.