Newsgroup: it.comp.appl.access
Titolo: Invio Mail da Access a più destinatari e....

Ciao
come da oggetto devo inviare una mail, da vba, con queste
caratteristiche:
1) molti destinatari
2) con allegato
3) impostando oggetto e testo da codice
4) con Outlook
5) utilizzando un account specifico
6) senza chiudere la sessione aperta (se lo fosse) di Outlook
7) senza dover dare conferme o premere invii (in maniera trasparente
per l'utente) se non da form, ma solo per essere sicuri dell'oprazione
ho cercato un po in giro ma così complicata non l'ho trovata
grazie
ciao

 ciao
Niente di complicato se non forse per l'account specifico che risorvi con le 
librerie di outlook.
Guarda il metodo sendobject oppure "invio mail tramite MAPI" ci sono 
un'infinit� di codici"
Ciao
-- 
Roberto da Parma
 

 Roberto da Parma
ciao Roberto
ovviamente ho già cercato dei codici. Ma non trovo qualcosa che possa
essere adattato.
cmonque grazie

 cmonque grazie
Fai tutto con il comando che ti ho indicato e un ciclo for...eccezion fatta 
se devi scegliere l'account con cui vuoi spedire la mail (invia con 
l'account predefinito).


 ciao
se interessa: ho risolto così (copiato pari pari) :
Option Compare Database
Option Explicit
Private Sub Application_Startup()
    'IGNORE - This forces the VBA project to open and be accessible
using automation
    '         at any point after startup
End Sub
'
Public Function FnSendMailSafe(strTo, _
                                strcc, _
                                strBCC, _
                                strSubject, _
                                strMessageBody, _
                                strAttachments, _
                                AccSen)
On Error GoTo ErrorHandler:
    Dim MAPISession As Outlook.NameSpace
    Dim MAPIFolder As Outlook.MAPIFolder
    Dim MAPIMailItem As Outlook.MailItem
    Dim oRecipient As Outlook.Recipient
    Dim i As Long
    Dim TempArray() As String
    Dim varArrayItem As Variant
    Dim strEmailAddress As String
    Dim strAttachmentPath As String
    Dim blnSuccessful As Boolean
    'Get the MAPI NameSpace object
    Set MAPISession = Outlook.Session
    If Not MAPISession Is Nothing Then
      'Logon to the MAPI session
      MAPISession.Logon , , True, False
      'Create a pointer to the Outbox folder
      Set MAPIFolder = MAPISession.GetDefaultFolder(olFolderOutbox)
      If Not MAPIFolder Is Nothing Then
        'Create a new mail item in the "Outbox" folder
        Set MAPIMailItem = MAPIFolder.Items.Add(olMailItem)
        If Not MAPIMailItem Is Nothing Then
          With MAPIMailItem
            'Create the recipients TO
                TempArray = Split(strTo, ";")
                For Each varArrayItem In TempArray
                    strEmailAddress = Trim(varArrayItem)
                    If Len(strEmailAddress) > 0 Then
                        Set oRecipient = .Recipients.Add
(strEmailAddress)
                        oRecipient.Type = olTo
                        Set oRecipient = Nothing
                    End If
                Next varArrayItem
            'Create the recipients CC
                TempArray = Split(strcc, ";")
                For Each varArrayItem In TempArray
                    strEmailAddress = Trim(varArrayItem)
                    If Len(strEmailAddress) > 0 Then
                        Set oRecipient = .Recipients.Add
(strEmailAddress)
                        oRecipient.Type = olCC
                        Set oRecipient = Nothing
                    End If
                Next varArrayItem
            'Create the recipients BCC
                TempArray = Split(strBCC, ";")
                For Each varArrayItem In TempArray
                    strEmailAddress = Trim(varArrayItem)
                    If Len(strEmailAddress) > 0 Then
                        Set oRecipient = .Recipients.Add
(strEmailAddress)
                        oRecipient.Type = olBCC
                        Set oRecipient = Nothing
                    End If
                Next varArrayItem
            'Set the message SUBJECT
                .Subject = strSubject
            'Set the message BODY (HTML or plain text)
                If StrComp(Left(strMessageBody, 6), "<HTML>",
vbTextCompare) = 0 Then
                    .HTMLBody = strMessageBody
                Else
                    .Body = strMessageBody
                End If
            'Add any specified attachments
                TempArray = Split(strAttachments, ";")
                For Each varArrayItem In TempArray
                    strAttachmentPath = Trim(varArrayItem)
                    If Len(strAttachmentPath) > 0 Then
                        .Attachments.Add strAttachmentPath
                    End If
                Next varArrayItem
            For i = 1 To Outlook.Session.Accounts.Count
                If Outlook.Session.Accounts.Item(i) = AccSen Then
                    .SendUsingAccount = Outlook.Session.Accounts.Item
(i)
                    .Send
                End If
            Next i
  'eleuterio
            '.Send 'No return value since the message will remain in
the outbox if it fails to send
            Set MAPIMailItem = Nothing
          End With
        End If
        Set MAPIFolder = Nothing
      End If
      MAPISession.Logoff
    End If
    'If we got to here, then we shall assume everything went ok.
    blnSuccessful = True
ExitRoutine:
    Set MAPISession = Nothing
    FnSendMailSafe = blnSuccessful
    Exit Function
ErrorHandler:
    MsgBox "An error has occured in the user defined Outlook VBA
function FnSendMailSafe()" & vbCrLf & vbCrLf & _
            "Error Number: " & CStr(Err.Number) & vbCrLf & _
            "Error Description: " & Err.Description,
vbApplicationModal + vbCritical
    Resume ExitRoutine
End Function