3 semplici metodi per inviare e-mail da Access 2007/2010/2013/2016/2019

SINTESI:

curioso di sapere come inviare e-mail dal database di Access? Bene, molti utenti come te fanno spesso questa domanda in molti dei siti del forum. Quindi, oggi ho selezionato questo argomento specifico per rispondere, come è possibile inviare automaticamente e-mail da Access. Se sei anche tu a cercare alcuni semplici metodi per inviare e-mail a partire de MS Access Banca dati, dai un’occhiata a questo post.

Come inviare automaticamente e-mail da Access 2016

Sebbene ci siano diversi modi disponibili per eseguire questa operazione di invio di e-mail dall’attività del database di Access, ma in questo post parlerò brevemente dei 3 approcci più semplici e popolari.

  • Invia e-mail dall Access tramite Outlook
  • Invio di e-mail dall Access mediante il metodo SendObject o il metodo EMailDatabaseObject
  • Invia e-mail dall Access utilizzando la macro

Quindi iniziamo…!

Metodo 1: inviare e-mail dall Access utilizzando Outlook

inviare e-mail dall Access utilizzando Outlook

In questa sezione imparerai come inviare automaticamente messaggi di MS Outlook in MS Access. NOTA: il codice di seguito indicato non funziona correttamente se non hai installato l’aggiornamento di protezione della posta elettronica di Outlook corretto a seconda della versione di Outlook che stai attualmente in uso. Quindi, ottenere le informazioni complete sull’aggiornamento della protezione della posta elettronica di Outlook dai seguenti articoli:

262631 OL2000: informazioni sull’aggiornamento della protezione della posta elettronica di Outlook

262617 OL98: informazioni sull’aggiornamento della protezione della posta elettronica di Outlook

Bene, puoi usare il metodo SendObject per inviare le mail MAPI a livello di codice nella tua applicazione MS Access. Come, il metodo SendObject non ti darà l’accesso completo sulle funzionalità di posta. Come opzione per impostare la priorità di massaggio o per allegare file esterno.

La procedura sotto menzionata utilizza l’automazione per creare e inviare messaggi di posta elettronica ad Access. Puoi usufruire di così tante funzionalità in MS Outlook che non otterrai nel metodo SendObject.

Principalmente ci sono sei passaggi per inviare e-mail da Access utilizzando Outlook. Queste sono le cose che hai eseguito nella tua posta di Outlook.

  1. Prima di tutto inizializzare la sessione di Outlook.
  2. Crea un nuovo messaggio.
  3. Quindi aggiungere i destinatari (CC, BCC e A) e assegnare i loro nomi.
  4. Impostare tutte le proprietà valide, come Corpo, Oggetto e Importanza.
  5. Aggiungi gli allegati che desideri allegare.
  6. Mostra o invia il messaggio.

articolo utile:

Come importare l’email di Outlook nel database di Access?

I passaggi per inviare e-mail dall Access utilizzando Outlook a livello di codice

  1. Innanzitutto è necessario creare un file di testo con il nome Clienti.txt direttamente nella cartella C: \ Documenti.
  2. Ora avvia l’applicazione MS Access e apri il database di esempio, ad esempio: Northwind.mdb.

È tempo di creare un modulo nel tuo database di Access. Dopodiché digita semplicemente la riga “Opzione esplicita” nella sezione Dichiarazioni del modulo solo se non è scritta lì.

  1. Dal menu Strumenti, toccare l’opzione Riferimenti.
  2. Ora nella casella Riferimenti, toccare per selezionare la Libreria oggetti di Microsoft Outlook 9.0, quindi selezionare l’opzione OK. NOTA: in alcuni casi nella casella “Riferimenti disponibili” non è disponibile l’opzione “Libreria oggetti di Microsoft Outlook 9.0”. Quindi, in tal caso, cerca nel tuo disco rigido il file “Msoutl9.olb”, Msoutl9.olb.

Se non riesci ancora a recuperare quel file, devi eseguire il programma di installazione di MS Outlook per installarlo. Dopodiché solo tu puoi procedere con la seguente procedura per inviare e-mail Outlook da Access.

  1. Nel nuovo modulo, è sufficiente digitare la seguente procedura:

Sub SendMessage(Optional AttachmentPath)
Dim objOutlook As Outlook.Application
Dim objOutlookMsg As Outlook.MailItem
Dim objOutlookRecip As Outlook.Recipient
Dim objOutlookAttach As Outlook.Attachment

‘ Create the Outlook session.
Set objOutlook = CreateObject(“Outlook.Application”)

‘ Create the message.
Set objOutlookMsg = objOutlook.CreateItem(olMailItem)

With objOutlookMsg
‘ Add the To recipient(s) to the message.
Set objOutlookRecip = .Recipients.Add(“Nancy Davolio”)
objOutlookRecip.Type = olTo

‘ Add the CC recipient(s) to the message.
Set objOutlookRecip = .Recipients.Add(“Andrew Fuller”)
objOutlookRecip.Type = olCC

‘ Set the Subject, Body, and Importance of the message.
.Subject = “This is an Automation test with Microsoft Outlook”
.Body = “Last test – I promise.” & vbCrLf & vbCrLf
.Importance = olImportanceHigh  ‘High importance

‘ Add attachments to the message.
If Not IsMissing(AttachmentPath) Then
Set objOutlookAttach = .Attachments.Add(AttachmentPath)
End If

‘ Resolve each Recipient’s name.
For Each objOutlookRecip In .Recipients
objOutlookRecip.Resolve
If Not objOutlookRecip.Resolve Then
objOutlookMsg.Display
End If
Next
.Send

End With
Set objOutlookMsg = Nothing
Set objOutlook = Nothing
End Sub

  1. Per verificare questa procedura, digitare la seguente riga nella finestra immediata. Quindi, premi una volta il tasto Invio dalla tastiera:

SendMessage “C: \ My Documents \ Customers.txt”

Se si desidera inviare e-mail dall’accesso senza allegare alcun allegato, rimuovere la sezione degli argomenti durante la chiamata della procedura, in questo modo:

SendMessage

Metodo 2: inviare e-mail dall Access utilizzando il metodo SendObject o il metodo EMailDatabaseObject

inviare e-mail dall Access utilizzando il metodo SendObject

MS Access ti offre di inviare e-mail usando il metodo DoCmd.SendObject nel codice del modulo VBA. Bene, il metodo funziona per inviare e-mail semplici in quanto presenta alcune limitazioni significative.

Nota: nella precedente versione dell’applicazione di accesso come 2002/2003/2007 il metodo SendObject è stato utilizzato per l’invio di e-mail dall’accesso. Considerando che dall’inizio di Access 2010 questo metodo SendObject è stato rinominato in EMailDatabaseObject.

L’utente può utilizzare l’azione macro EMailDatabaseObject nella rispettiva applicazione dei database di Access per allegare il modulo, il report o il modulo Access nel messaggio di posta elettronica. Da dove può essere facilmente visualizzato e quindi inoltrato.

Obiettivo principale utilizzare il metodo SendObject

  • Il comando SendObject consente di inviare un messaggio e-mail insieme all’opzione per allegare report, dati del modulo, tabella, modulo, query, modulo. Bene, questo allegato può essere in uno di questi formati Excel, testo, HTML, PDF, rich text, XPS ecc.
  • Questo comando SendObject specifico utilizza Microsoft Outlook o altre applicazioni di posta elettronica basate su MAPI (Mail Applications Programming Interface) per rilasciare la posta elettronica. Ciò creerà problemi poiché la sicurezza di Windows interrompe ogni messaggio MAPI e invia una finestra di richiesta di conferma.
Sintassi del metodo SendObject

Ecco la sintassi per utilizzare il metodo SendObject:

DoCmd.SendObject ObjectType, ObjectName, OutputFormat, To, Cc, Ccn, Subject, MessageText, EditMessage, TemplateFile

Sintassi macro

Scegli SendObject come azione e assegna i suoi argomenti.

parametri

Ogni parametro ha un significato e tutti i parametri sopra menzionati nella sintassi sono opzionali.

Esempio di invio di e-mail dall Access mediante il metodo SendObject

Nell’esempio seguente ho incluso una tabella Employees all’interno di una mail in formato MS Excel. Dopo aver specificato il messaggio di posta elettronica necessario punti come A, Cc e Oggetto. L’email verrà inviata immediatamente, senza effettuare alcuna modifica.

DoCmd.SendObject acSendTable, “Employees”, acFormatXLS, _ “Nancy Davolio; Andrew Fuller”, “Joan Weber”, _ _ Current Spreadsheet of Employees “,, False

Limitazioni dell’uso del metodo SendObject

Sebbene il comando SendObject sia molto utile per inviare brevi messaggi o un oggetto. Ma ha ancora così tanti limiti significativi come:

  • I messaggi non devono avere una lunghezza massima di 255 caratteri.
  • I messaggi devono essere un normale testo normale e non possono essere in formato HTML
  • Non è possibile allegare più file.
  • Non è possibile filtrare il report o l’origine dati che è necessario inviare
  • Nessuna opzione per specificare qualsiasi indirizzo FROM.
  • La finestra di dialogo di sicurezza MAPI verifica ogni messaggio e-mail prima di inviarlo.
  • Tranne Outlook, Outlook Express o Exchange, il metodo non funziona con altre app di posta elettronica.
  • Nessuna opzione per specificare impostazioni come priorità, sensibilità e conferma di lettura

Metodo 3: inviare e-mail dall Access utilizzando la macro

inviare e-mail dall Access utilizzando la macro

Nel terzo e ultimo metodo impareremo a inviare posta attraverso la macro di Access.

  • Apri l’applicazione MS Access.
  • Aprire il database che si desidera utilizzare.
  • Toccare la scheda “Crea” e quindi il gruppo “Macro”.

inviare e-mail dall Access utilizzando la macro 1

  • Ora vedrai il catalogo delle azioni nell’angolo destro della finestra dell’applicazione Access.
  • Scegliere l’opzione “Invia oggetto” dalla casella a discesa di “Azione”.

inviare e-mail dall Access utilizzando la macro 2

  • È necessario completare tutti i passaggi presenti in Action Argument. Per Tipo di oggetto, selezionare “Rapporto” e per il nome dell’oggetto (è il nome del rapporto che deve essere inviato per posta) scegliere “Problemi aperti”. Per il formato di output selezionare “Formato PDF (* .pdf)”.

Ora devi inserire gli indirizzi e-mail, l’oggetto e il testo del destinatario del rapporto.

Se è necessario modificare il messaggio e-mail prima di inviarlo, selezionare l’opzione “Sì”, altrimenti scegliere l’opzione “No”. Per allegare i file HTML, è necessario assegnare il percorso del modello.

  • Toccare l’icona del disco per salvare la macro.
  • Ora è il momento di dare un nome alla tua macro e quindi toccare l’opzione “OK”.
  • Per eseguire la macro è necessario toccare il punto esclamativo.
  • Premi sull’opzione “Consenti” per ordinare il programma per l’invio di e-mail. Il rapporto viene inviato tramite Outlook.
  • Per aprire il riquadro di navigazione, toccare le doppie frecce.
  • Per inviare automaticamente un rapporto di accesso tramite e-mail, fare doppio clic sulla macro salvata.
  • Verificare se l’e-mail è stata inviata o meno aprendo la posta.

avvolgere su:

Tutti i suddetti metodi per inviare automaticamente e-mail dall Access 2016/2013/2010/2007 sono troppo facili da eseguire. Ora sta a te decidere quale metodo vuoi provare. Quindi, provali prima e condividi la tua opinione con noi. In bocca al lupo..!

Hai ancora problemi? Risolvili con la Stellar riparazione per Access:

Questo software garantisce riparazione e recupero di senza soluzione di continuità del database ACCDB e MDB. Esso ripristina tutti gli oggetti tra cui tabelle, report, query, record, moduli e indici insieme a moduli, macro, ecc. Fissare Microsoft Access problemi di ora in 3 semplici passaggi:

  1. Scarica Stellar Access database riparazione strumento rated ottima su Cnet.
  2. Fai clic sull'opzione Sfoglia e Cerca per individuare il database di Access corrotto.
  3. Fai clic su Ripara Pulsante per riparae visualizzare in anteprima gli oggetti del database.

Pearson Willey è uno scrittore di contenuti di siti Web e lungo-forma pianificatore di contenuti. Oltre a questo, è anche un avido lettore. Quindi sa benissimo come scrivere un contenuto accattivante per i lettori. Scrivere è come un vantaggio crescente per lui. Ama esplorare le sue conoscenze su MS Access e condividere blog tecnici.