1 yes, in your tblTeams, make a field of OLE type. Paste your icon in the field. (i use this)
2. no, once in pdf format nobody can change it. Instead of a report, I would send the data as XLS and let users mark an X in the column
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, vQry, vFile, True, "Football"
3. yes, in a list box show the users emails , put a button on the form, when clicked it will scan the list and send each 1 an email
The btnSend_click will then scan the list of people and send them the report.
Code:
sub btnSend_Click()
vQry = "qsFootballData"
vFile = "c:\folder\football.xls"
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, vQry, vFile, True, "football"
'scan items in listbox
For i = 0 To lstClients.ListCount - 1
vTo = lstClients.ItemData(i)
lstClients = vTo
Call Email1(vTo,"subject","body", "c:\folder\football.xls"
' but to send the pdf rpt:
'DoCmd.SendObject acSendReport, "rReport", acFormatPDF, lstPerson , , "subject", "msg body"
next
end sub
'here is the email part. You must load OUTLOOK in the tools, references
Code:
Public Function Email1(ByVal pvTo, ByVal pvSubj, ByVal pvBody, optional ByVal pvFile) As Boolean
Dim oApp As Outlook.Application
Dim oMail As Outlook.MailItem
On Error GoTo ErrMail
'NOTE BE SURE YOU ADD OUTLOOK APP VIA VBE menu:TOOLS, REFERENCES
Set oApp = CreateObject("Outlook.Application")
Set oMail = oApp.CreateItem(olMailItem)
With oMail
.To = pvTo
.Subject = pvSubj
.Body = pvBody
if not isempty(pvFile) then .Attachments.Add pvFile, olByValue, 1
.Send
End With
Email1 = True
endIt:
Set oMail = Nothing
Set oApp = Nothing
Exit Function
ErrMail:
MsgBox Err.Description, vbCritical, Err
Resume endit
End Function