19. maj 2003 - 12:48Der er
27 kommentarer og 1 løsning
MultiSelect i liste
Hej igen Eksperter
Jeg skal kunne sende en mail til samtlige personer i en kolonne i en forespørgsel. Personerne ses på en liste, men listen er baseret på en forespørgsel, og så tror jeg at det er nemmere at sende en mail til alle personer som er i forespørgslen end på en listen.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Function SendMail() Dim Out As Outlook.Application Dim Post As Outlook.MailItem Dim rs as ADODB.Recordset
Set Out = CreateObject("Outlook.Application") Set Post = Out.CreateItem(olMailItem) Set rs = New ADODB.Recordset rs.Open "DinForespørgsel",currentproject.connection do until Rs.EOF Post.To = Rs![E-Mail adresse fra forespørgslen] POst.Subject = "Emne" Post.Body = "Brødtekst"
rs.MOvenext Post.send
loop rs.Close set rs = Nothing Set Out = Nothing End Function
Funktionen kræver reference til Outlook og ADO.
NB: Den er ikke afprøvet men blot skrevet ud fra hovedet...!
Hvis du arbejder med Access 2000 eller XP, så vil den formentlif være der i forvejen. Men ja...den skal være der. Den hedder bare "Microsoft ActiveX Data Objects 3.x Library"
Du har ret, den er der i forvejen... Men det virker stadig ikke. Der hvor der står "Post.To = Rs![E-Mail adresse fra forespørgslen] " skriver jeg bare kolonnen som indeholder min e-mailadresser ikk'?
Her er den, jeg kunne ikke få lov til at sætte funktionen ind i min 'private sub' så jeg prøvede det her, men det virker jo heller ikke :)
Private Sub cmdSendMail_Click()
Function SendMail()
End Function
Function SendMail() Dim Out As Outlook.Application Dim Post As Outlook.MailItem Dim rs As ADODB.Recordset
Set Out = CreateObject("Outlook.Application") Set Post = Out.CreateItem(olMailItem) Set rs = New ADODB.Recordset rs.Open "qrySearchResult", CurrentProject.Connection, adOpenStatic Do Until rs.EOF Post.To = rs![Email Address] Post.Subject = "Emne" Post.Body = "Brødtekst"
rs.MoveNext Post.send
Loop rs.Close Set rs = Nothing Set Out = Nothing End Function
Private Sub cmdSendMail_Click() Dim Out As Outlook.Application Dim Post As Outlook.MailItem Dim rs As ADODB.Recordset
Set Out = CreateObject("Outlook.Application") Set Post = Out.CreateItem(olMailItem) Set rs = New ADODB.Recordset rs.Open "qrySearchResult", CurrentProject.Connection, adOpenStatic Do Until rs.EOF POst.Recipients.Add rs![Email Address] Post.Subject = "Emne" Post.Body = "Brødtekst" Post.Display 'Post.Send rs.MoveNext
Loop rs.Close Set rs = Nothing Set Out = Nothing End sub
For at få det i BCC skal du skrive: Post.BCC = rs![Email Address]
Pling'en er kun for at du kunne se hvordan syntaksen var, hvis du ønskede at sende med det samme. Post.Display åbner mailen på skærmen først, hvorefter du selv skal klikke på "Send"
Da jeg brugte 'POst.Recipients.Add rs![Email Address]' sendte den til samtlige adresser på en gang - adskilt af kommaer, så kan jeg bare ikke forstå hvad der er anderledes ved BCC?
Det er fordi det er 2 forskellige metoder. De burde virke ens, men det er i virkeligheden din post.recipients.add, som virker forkert (det har jeg oplevet før)
Prøv denne model i steder:
Private Sub cmdSendMail_Click() Dim Out As Outlook.Application Dim Post As Outlook.MailItem Dim rs As ADODB.Recordset
Set Out = CreateObject("Outlook.Application") Set Post = Out.CreateItem(olMailItem) Set rs = New ADODB.Recordset rs.Open "qrySearchResult", CurrentProject.Connection, adOpenStatic Do Until rs.EOF Post.BCC = Post.BCC & rs![Email Address] & ";" Post.Subject = "Emne" Post.Body = "Brødtekst" rs.MoveNext Loop
Post.Display 'Post.Send rs.Close Set rs = Nothing Set Out = Nothing End sub
Den skriver alle mailadresserne i BCC feltet, men uden semikolon - jeg har prøvet at indsætte et mellemrum før og efter ';', men det ændrer ikke noget. (Du skal selvfølgelig nok få point få det her ekstra arbejde - det var jo ikke med i det oprindelige spørgsmål :) ).
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.