Note: The other languages of the website are Google-translated. Back to English

Come applicare un pulsante per inviare e-mail con il file Word corrente allegato? 

Se è necessario inviare un messaggio di posta elettronica da un documento di Word tramite Outlook e allegare anche il file di Word corrente, è possibile creare un pulsante di comando, quindi inviare il messaggio facendo clic su questo pulsante senza aprire Outlook. In questo articolo, introdurrò come affrontarlo rapidamente e facilmente.

Applica un pulsante per inviare e-mail con il file Word corrente allegato


Applica un pulsante per inviare e-mail con il file Word corrente allegato

Si prega di eseguire i seguenti passaggi per risolvere questo lavoro nel file Word:

1. Innanzitutto, dovresti creare un pulsante di comando, fai clic Costruttori > Strumenti legacy > Pulsante di comando (controllo ActiveX), vedi screenshot:

pulsante doc per inviare e-mail 1

2. Seleziona il pulsante e fai clic Proprietà sotto il Costruttori scheda, nel Proprietà riquadro, digita il testo della didascalia che ti serve nel file Didascalia campo, vedi screenshot:

pulsante doc per inviare e-mail 2

3. Quindi, chiudi il file Proprietà riquadro, ora, fai clic con il pulsante destro del mouse e scegli Visualizza codice, vedi screenshot:

pulsante doc per inviare e-mail 3

4. E poi, nel display Microsoft Visual Basic, Applications Edition finestra, copia e incolla il codice seguente tra gli script originali, vedi screenshot:

Dim xOutlookObj As Object
    Dim xEmail As Object
    Dim xDoc As Document
    Application.ScreenUpdating = False
    Set xOutlookObj = CreateObject("Outlook.Application")
    Set xEmail = xOutlookObj.CreateItem(olMailItem)
    Set xDoc = ActiveDocument
    xDoc.Save
    With xEmail
        .Subject = "Fax-data"
        .Body = "This is a test email."
        .To = "yy@addin99.com"
        .Importance = olImportanceNormal
        .Attachments.Add xDoc.FullName
        .Display
    End With
    Set xDoc = Nothing
    Set xEmail = Nothing
    Set xOutlookObj = Nothing
    Application.ScreenUpdating = True

pulsante doc per inviare e-mail 4

Note:: Nel codice sopra, è necessario modificare l'oggetto, il corpo del testo o l'indirizzo inviato secondo le proprie necessità.

5. Quindi, salva e chiudi questo codice, fai clic su Modalità di progettazione per disattivare la modalità di progettazione. Ora, quando fai clic sul pulsante di comando che hai creato, verrà creata un'e-mail con il documento di Word corrente come allegato, vedi screenshot:

pulsante doc per inviare e-mail 5

6. Alla fine, devi solo fare clic Invia pulsante per inviare questo messaggio.


Strumenti di produttività Word consigliati

 

Kutools per Word: oltre 100 funzionalità avanzate per Word, risparmia il 50% del tempo

  • Le operazioni complicate e ripetute possono essere eseguite una sola volta in pochi secondi.
  • Inserisci più immagini tra le cartelle nel documento di Word contemporaneamente.
  • Unisci e combina più file di Word tra cartelle in uno con l'ordine desiderato.
  • Suddividi il documento corrente in documenti separati in base a titolo, interruzione di sezione o altri criteri.
  • Converti file tra Doc e Docx, Docx e PDF, raccolta di strumenti per conversioni e selezioni comuni e così via ...
Commenti (29)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Sto cercando di inviare l'e-mail con l'oggetto che è il contenuto di uno dei miei campi. È possibile?
Questo commento è stato fatto dal moderatore sul sito
Hola, me podrían apoyar para que el archivo se convierta en PDF e se adjunte al correo en ves della word por favor.
Grazie mille.
Questo commento è stato fatto dal moderatore sul sito
Ciao Estendi il team di Office,

Credo che "xEmile" sia scritto in modo errato. Dovrebbe essere "xEmail".

Mentre il codice viene eseguito e non ci sono problemi, la seguente istruzione non farà nulla:

Imposta xEmail = Niente
Questo commento è stato fatto dal moderatore sul sito
Ciao, Abhi,
Grazie per il tuo commento, come hai detto, "xEmile" è scritto in modo errato, dovrebbe essere "xEmail". Ho aggiornato il codice.
Grazie ancora!
Questo commento è stato fatto dal moderatore sul sito
È possibile farlo in modo da inviare solo una pagina di un documento?
Questo commento è stato fatto dal moderatore sul sito
Ciao, Don,
Per gestire la tua attività, applica il codice seguente, nel codice, dovresti cambiare la pagina iniziale e la pagina finale con la tua:

Private Sub CommandButton1_Click ()

Dim xCurPageStart As Long, xCurPageEnd As Long, xCurPageRange As Range

Dim xCurPage As Integer, xPages As Integer

Dim xOutlookObj come oggetto

Dim xEmail come oggetto

Dim xDoc come documento, xNewDoc come documento

Dim xFilePath come stringa

Dim xOldStart quanto più lungo, xOldEnd quanto più lungo

On Error Resume Next

Application.ScreenUpdating = False

Imposta xOutlookObj = CreateObject ("Outlook.Application")

Imposta xEmail = xOutlookObj.CreateItem(olMailItem)

xFilePath = CreateObject("WScript.Shell").SpecialFolders(16)

Imposta xDoc = ActiveDocument

xOldStart = xDoc.Application.Selection.Start

xOldEnd = xDoc.Application.Selection.End

xDoc.Salva

xFilePath = xFilePath + "\file allegato" + VBA.Mid(xDoc.FullName, VBA.InStrRev(xDoc.FullName, ".")) 'il file allegato è il nome del file allegato, cambia in base alle tue esigenze

xCurPageStart = 2 'pagina iniziale

xCurPageEnd = 2 'pagina finale

xPagine = Selection.Information(wdNumberOfPagesInDocument)

xCurPageStart = Selection.GoTo(cosa:=wdGoToPage, Which:=wdGoToNext, Nome:=xCurPageStart).Inizio

Se xCurPage = xPages Allora

xCurPageEnd = ActiveDocument.Content.End

Altro

xCurPageEnd = Selection.GoTo(what:=wdGoToPage, Which:=wdGoToNext, Name:=xCurPageEnd + 1).Start

End If

Imposta xCurPageRange = ActiveDocument.Range(xCurPageStart, xCurPageEnd)

xCurPageRange.Seleziona

xCurPageRange.Copy

Imposta xNewDoc = Application.Documents.Add(Visible:=False)

xNuovoDoc.Attiva

xNewDoc.Content.PasteAndFormat wdFormatOriginalFormatting

xNewDoc.SaveAs2 NomeFile:=xPercorsoFile

xNuovoDoc.Chiudi

xDoc.Range(xOldStart, xOldEnd).Seleziona

Con xEmail

.Oggetto = "Dati fax"

.Body = "Questa è un'email di prova."

.A = "aa@addin99.com"

.Importanza = olImportanzaNormale

.Allegati.Aggiungi xFilePath

.Schermo

Fine Con

VBA.Kill xFilePath

Imposta xDoc = Niente

Imposta xEmail = Niente

Imposta xOutlookObj = Niente

Application.ScreenUpdating = True

End Sub
Questo commento è stato fatto dal moderatore sul sito
Ho creato un modulo compilabile in MS Word. Ho utilizzato strumenti legacy per il calcolo, ecc. Ho anche aggiunto un pulsante di invio che funziona per inviare il modulo all'e-mail. Il problema è che quando riapro questo documento dopo il salvataggio, non funziona. Ho anche provato a salvarlo come documento abilitato per le macro ma non è stato utile. Per favore, puoi aiutare?
Grazie
Questo commento è stato fatto dal moderatore sul sito
All'inizio funzionava, e poi per qualche motivo ora mi dà un errore di errore 429 sul componente activeX che non può creare oggetti. ho letteralmente appena copiato e incollato. Funzionava prima, ma ho appena cambiato la dimensione del carattere, ingrandito il pulsante e rietichettato la didascalia. non credo di aver accidentalmente modificato alcune altre impostazioni? qualche idea di cosa potrebbe essere?
Questo commento è stato fatto dal moderatore sul sito
Ciao! Vorrei fare in modo che il pulsante di comando invii un'e-mail con il documento di Word come corpo dell'e-mail (il mio documento di Word è un modulo). C'è un modo per farlo?
Questo commento è stato fatto dal moderatore sul sito
Vorrei che il mio documento venisse inviato come documento PDF anziché come documento Word.
Questo commento è stato fatto dal moderatore sul sito
Ad esempio usando il testo da una casella di testo/campo di testo nel documento di Word e inserendolo come testo nella riga dell'oggetto della tua e-mail?
Questo commento è stato fatto dal moderatore sul sito
Sì, questo è anche quello che sto cercando qualcuno può aiutare con questa richiesta?
Questo commento è stato fatto dal moderatore sul sito
Funziona anche per Lotus Notes?
Cosa devo modificare in "xOutlookObj"?
Questo commento è stato fatto dal moderatore sul sito
Ciao Estendi ufficio,
Possiamo impostare un'e-mail diversa non collegata a Outlook? Ti piace l'e-mail diretta all'account GoDaddy?
Questo commento è stato fatto dal moderatore sul sito
Sto cercando di trovare le stesse informazioni. Uso gmail e devo creare un modulo da inviare a vari indirizzi e-mail che possono essere inviati automaticamente al mio account gmail.
Questo commento è stato fatto dal moderatore sul sito
Ho creato il documento ma il mio problema ora è che se invio questo modulo per dire 4 persone da completare, quando lo aprono dall'allegato e-mail si apre in modalità di sola lettura e quando fanno clic su invia chiede loro di salvare come prima consentirà al codice di aprire un'e-mail indirizzata a me. C'è un modo per aggirare questo oltre a fornire loro la posizione del file?
Questo commento è stato fatto dal moderatore sul sito
Puoi aggiungere Ccn a questo codice? Ho provato ad aggiungere Ccn e ricevo un errore di compilazione per l'espressione prevista.
Questo commento è stato fatto dal moderatore sul sito
Ciao Erica,

Puoi aggiungere Ccn a questo codice. Ad esempio, puoi aggiungere .Bcc = "zmt@addin99.com" appena sotto .To = "yy@addin99.com". Quindi il codice diventa:

Dim xOutlookObj come oggetto
Dim xEmail come oggetto
Dim xDoc come documento
Application.ScreenUpdating = False
Imposta xOutlookObj = CreateObject ("Outlook.Application")
Imposta xEmail = xOutlookObj.CreateItem(olMailItem)
Imposta xDoc = ActiveDocument
xDoc.Salva
Con xEmail
.Oggetto = "Dati fax"
.Body = "Questa è un'email di prova."
.A = "aa@addin99.com"
.Bcc = "zmt@addin99.com"
.Importanza = olImportanzaNormale
.Allegati.Aggiungi xDoc.FullName
.Schermo
Fine Con
Imposta xDoc = Niente
Imposta xEmail = Niente
Imposta xOutlookObj = Niente
Application.ScreenUpdating = True

Si prega di vedere l'immagine allegata. Buona giornata.
Cordiali saluti,
Mandyhttps://www.extendoffice.com/images/stories/comments/comment-zmt/Add_Bcc_to_code.png
Questo commento è stato fatto dal moderatore sul sito
Ciao gente,

Voglio applicare un pulsante dove clicco e invio il documento come e-mail, non come allegato, a un indirizzo e-mail. In modo che il documento sia il testo dell'e-mail. Proprio come l'effetto del pulsante "invia al destinatario" sulla barra multifunzione.

Qualcuno può darmi il codice giusto per quello?

Thank you.
Questo commento è stato fatto dal moderatore sul sito
Ciao,
Potrebbe essere che il codice non possa aiutare a inviare il documento Word corrente come corpo dell'e-mail, in tal caso, l'immagine e la formattazione del file all'interno del documento andranno perse.
Se desideri inviare il documento corrente come corpo di posta elettronica, Mail Merge può farti un favore.
Hai bisogno della stampa unione per l'invio di email?
Se hai bisogno, commenta qui.
.
Questo commento è stato fatto dal moderatore sul sito
Ciao,

grazie per l'aiuto!

Ci proverei con il tuo suggerimento. Quindi sì, ho bisogno della stampa unione per l'invio di e-mail.
Questo commento è stato fatto dal moderatore sul sito
Ciao,

grazie per l'aiuto!

Ci proverei con il tuo suggerimento. Mi daresti il ​​codice per la stampa unione?

Grazie!
Questo commento è stato fatto dal moderatore sul sito
Ciao,
Per inviare il documento Word corrente come corpo di posta, puoi aggiungere il file Invia al destinatario della posta comando al tuo QAT, per favore fai come questo:
1. Apri il file di Word che desideri inviare, quindi fai clic su Compila il > Opzioni.
2. Nel riquadro sinistro, selezionare Barra degli strumenti di accesso rapido.
3. Selezionare Comandi non nella barra multifunzione dal Scegli comandi da.
4. Scegli e seleziona Invia al destinatario della posta e fare clic sul pulsante Aggiungi>>.
5. Clic OK per chiudere la finestra di dialogo.
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-send-file-1.png

Ora questo Invia al destinatario della posta il comando apparirà in Barra degli strumenti di accesso rapido nella parte superiore della finestra di Word. Quindi, puoi inserire le informazioni relative nell'intestazione del messaggio. Dopo aver terminato le informazioni, fare clic Invia una copia, il messaggio con il documento word corrente come corpo verrà inviato immediatamente.

https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-send-file-3.png

Per favore, prova questo, spero che possa aiutarti!
Questo commento è stato fatto dal moderatore sul sito
Ho scoperto che il pulsante funziona per aprire un'e-mail ma quando si utilizza mailmerge il pulsante VBA diventa inattivo per qualche motivo?
Come posso assicurarmi che quando si utilizza il mailmerging il pulsante funzioni affinché l'utente completi il ​​modulo e quindi attivi il pulsante per favore?
Questo commento è stato fatto dal moderatore sul sito
Ciao, Mike,
Quando utilizzo la funzione Mailmerge, il pulsante è attivo.
Potresti spiegare il tuo problema in modo più dettagliato?
Oppure puoi caricare il tuo file qui, in modo che possiamo verificare dove si trova il problema.
.
Questo commento è stato fatto dal moderatore sul sito
Ciao Skyyang,

Si prega di vedere il post che ho inserito di seguito che ha la copia allegata.
Questo commento è stato fatto dal moderatore sul sito
Ciao,
Si prega di consultare il documento allegato di seguito.
Devo aggiornarlo per l'uso dei rinnovi 2023 e quando si unisce il pulsante sembra essere disabilitato poiché diversi membri mi hanno detto che non funziona.

Grazie,

Mike
Questo commento è stato fatto dal moderatore sul sito
Ciao, Mike,
Ho testato il tuo file nel mio computer, funziona bene. Sto usando Office 2019. Guarda la demo qui sotto:
https://www.extendoffice.com/images/stories/comments/comment-skyyang/send-doeument.gif
Questo commento è stato fatto dal moderatore sul sito
Ciao Skyyang,

Ho scoperto che funziona quando un utente ha MS Word ma sembra che email come @hotmail; @gmail; e indirizzi e-mail @live quegli utenti hanno problemi in cui il pulsante non funziona?
Sembra che non funzioni nemmeno sugli smartphone se l'utente fa affidamento sull'utilizzo di questi anziché su un computer.
Infine ho ricevuto una risposta da un altro utente che utilizza Windows 11 in cui il pulsante non funziona affatto.

Cosa hai provato con gli esempi sopra per favore?

Grazie,

Mike
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL