> Hoe ik kan plaatsen als Bedrag Gepaste > 0 en na 30 dagen van rekeningsdatum
voeg >0 aan de amountduekolom toe en <> WAAR (((AmountDue) >0) EN ((DateDue)<> e (), - 30)))
)
Om e-mail te verzenden. u kon de code in werking stellen wanneer u het gegevensbestand opent, wanneer u een specifieke vorm opent, wanneer u een knoop klikt of zelfs het van een macro roept en een geplande taak gebruikt om het in een specifieke tijd te verzenden. Hangt af van hoe u het wilt doen.
Voor de code. hier is een eenvoudig voorbeeld. wijzigt enkele code hebben anderen gepost. Kleef deze twee functies in een module in uw gegevensbestand en geef functie SendReport het veranderen „YourSavedQueryName“ aan de daadwerkelijke naam van uw vraag en „
[email protected] uit“ aan uw e-mailadres evenals iets anders (zoals gebiedsnamen) die veranderd vereist. Dan roep de functie SendReport van waar u (als op een knoop klik of van een macro) het rapport zou willen verzenden.
Overheidsfunctie OutlookSend (ByVal MailUser als Koord, ByVal MsgSubject als Koord, ByVal msgbody als Koord) zoals Van Boole
Schemerige appOutLook als Outlook.Application
Schemerige MailOutLook als Outlook.MailItem
Op Fout GoTo ErrHandler
Als niet IsNull (MailUser) en MailUser <> "" toen
Reeks appOutLook = CreateObject („Outlook.Application
“)
Vastgestelde MailOutLook = appOutLook.CreateItem (olMailItem
)
Ontvanger = MailUser
Met MailOutLook
. Aan = Ontvanger
. Onderwerp = MsgSubject
. Lichaam = msgbody
.DeleteAfterSubmit = Waar 'dit zou Vooruitzichten de nota laten verzenden zonder het in uw verzonden bak op te slaan
. Verzend
Eind met
Vastgestelde MailOutLook = niets
Reeks appOutLook = niets
Eind als 'niet IsNull (MailUser)
ExitHere:
De Functie van de uitgang
ErrHandler:
Selecteer Geval Err.Number
Geval 0
Hervat ExitHere
Geval anders
MsgBox „Fout“ & Err.Number & „(“ & Err.Description & „) in OutlookSend“
Uitgezocht eind
De Functie van het eind
Overheidsfunctie SendReport ()
Schemerige MyMsgBody, MySubject, MyMailAddress als Koord
Schemerige ItemCount als Geheel
Op Fout GoTo ErrHandler
Als DCount („*“, „YourSavedQueryName“) > 0 toen
Schemerige dbs als Gegevensbestand, rst als DAO.Recordset
Reeks dbs = CurrentDb
Reeks rst = dbs.OpenRecordset („YourSavedQueryName
“)
rst.MoveFirst
ItemCount = 0
Doe tot rst.EOF
item1 = rst! AmountDue
item2 = rst! WorkOrder
item3 = rst! [De Datum van de Rekening]
MyMsgBody = MyMsgBody & item1 & vbTab & item2 & vbTab & item3 & vbCrLf
ItemCount = ItemCount + 1
rst.MoveNext
Lijn
rst. Sluit
MyMailAddress = „
[email protected]“
MySubject = „Gepaste Rekeningen rapporteert: “ & ItemCount & „Punten“
Als niet IsNull (MyMsgBody) en MyMsgBody <> "" dan = OutlookSend (MyMailAddress, MySubject
, MyMsgBody) roten
Eind als
ExitHere:
De Functie van de uitgang
ErrHandler:
Selecteer Geval Err.Number
Geval 0
Hervat ExitHere
Geval anders
MsgBox „Fout“ & Err.Number & „(“ & Err.Description & „) in SendReport“
Uitgezocht eind
De Functie van het eind