Vai al contenuto principale

Tutorial Excel: invia e-mail da Excel

Normalmente, utilizziamo client di posta elettronica come Outlook, Gmail, ecc. per inviare e-mail. Tuttavia, molte persone archiviano i dati nelle cartelle di lavoro di Excel e devono inviare alcuni dati insieme ad altri mentre ci lavorano. Pertanto, devono inviare e-mail direttamente dalla cartella di lavoro di Excel, il che consente di risparmiare tempo nell'utilizzo di un client di posta elettronica. Questo tutorial passo dopo passo ti mostrerà come inviare e-mail da Excel in condizioni diverse.

Note:: prima di applicare i seguenti metodi, è necessario configurare un client di posta elettronica di Outlook nel computer e impostarlo come client di posta elettronica predefinito.

Sommario: [ Nascondere ]

(Fare clic su qualsiasi titolo nel sommario sottostante o a destra per passare al capitolo corrispondente.)

1. Le basi dell'invio di e-mail da Excel

Questa sezione introduce le basi dell'invio di e-mail da Excel.

1.1 Invia e-mail da Excel con le funzioni integrate di Excel

Se desideri inviare solo semplici e-mail da Excel, includendo solo i campi A, Oggetto, Cc e corpo. Le funzioni integrate in Excel possono aiutare.


1.1.1 Invia e-mail da Excel con una formula

Come mostrato nella tabella seguente, per inviare e-mail diverse da Excel in base ai campi forniti, puoi utilizzare i riferimenti di cella dei campi indicati per creare diverse formule di collegamento ipertestuale per farlo. Dopo aver creato i collegamenti ipertestuali e-mail, è possibile fare clic sul collegamento ipertestuale necessario per inviare automaticamente un'e-mail.

Nota: Se sono presenti più destinatari nei campi A o Cc, separarli con un punto e virgola.

Questa sezione è divisa in quattro parti per mostrare i passaggi per aggiungere separatamente indirizzo e-mail, destinatario/i Cc, riga dell'oggetto e corpo del testo alla formula del collegamento ipertestuale. Si prega di fare come segue.

La sintassi e gli argomenti del HYPERLINK funzione sono le seguenti.

Sintassi

HYPERLINK(link_location, [friendly_name])

argomenti

Collegamento_posizione (richiesto): il percorso e il nome del file del documento da aprire;
Suggerimenti: in questo tutorial, tutti i campi necessari per un'e-mail, come l'indirizzo e-mail del destinatario, i destinatari Cc, la riga dell'oggetto e il corpo del testo, devono essere inseriti nel primo argomento "link_location".
Nome amichevole (facoltativo): il valore di salto visualizzato nella cella.

1.1.1.1 Aggiungi l'indirizzo email alla formula del collegamento ipertestuale

Qui usiamo "posta:" come parte della formula per aggiungere un destinatario di posta elettronica. In questo esempio, l'indirizzo email del primo destinatario è nella cella B2, quindi è necessario aggiungere "mailto:" e fare riferimento alla cella B2.

"posta:"&B2

1. Selezionare una cella per visualizzare il collegamento ipertestuale. In questo caso, seleziono la cella F2.

2. Quindi inserisci la seguente formula.

=HYPERLINK("mailto:"&B2)

Note:: Se si preme il entrare chiave, verrà creato un collegamento ipertestuale come mostrato nella schermata seguente. Quando si fa clic sul collegamento, verrà creata un'e-mail di Outlook e l'indirizzo e-mail del destinatario verrà compilato automaticamente nel campo A.

L'indirizzo e-mail del destinatario viene ora aggiunto alla formula del collegamento ipertestuale. Continua con i seguenti passaggi per aggiungere la riga dell'oggetto, i destinatari Cc e il corpo del testo di cui hai bisogno.


1.1.1.2 Aggiungi i destinatari Cc alla formula del collegamento ipertestuale

Per aggiungere i destinatari Cc alla funzione Collegamento ipertestuale, aggiungere "?cc=" come parte della formula come segue.

"?cc=" & C2
dove C2 contiene l'indirizzo email del destinatario cc.

La formula nella cella F2 dovrebbe essere la seguente:

=HYPERLINK("mailto:" & B2 & "?cc=" & C2)


1.1.1.3 Aggiungi la riga dell'oggetto alla formula del collegamento ipertestuale

Per aggiungere la riga dell'oggetto alla funzione Collegamento ipertestuale, aggiungi "&oggetto=" come parte della formula come segue.

"&subject="& D2
dove C2 contiene l'oggetto dell'email.

La formula nella cella F2 dovrebbe ora essere simile alla seguente:

=HYPERLINK("mailto:" & B2 & "?cc=" & C2 & "&subject="& D2)


1.1.1.4 Aggiungi il corpo del testo con interruzioni di riga alla formula del collegamento ipertestuale

L'ultimo passaggio consiste nell'aggiungere il corpo del testo alla formula del collegamento ipertestuale. Come puoi vedere nell'esempio, due righe di testo in E2 sono separate da un'interruzione di riga e desideri mantenere l'interruzione di riga nel corpo dell'e-mail. Outlook riconosce l'interruzione di riga in questa circostanza? Controlliamolo.

Per aggiungere il corpo del testo alla formula del collegamento ipertestuale, è necessario aggiungere “&corpo=” come parte della formula come segue.

"&body="& E2
dove E2 contiene il corpo del testo dell'e-mail.

La formula nella cella F2 viene ora visualizzata come segue:

=HYPERLINK("mailto:" & B2 & "?cc=" & C2 & "&subject="& D2 & "&body="& E2)

Nota: Se si preme il entrare tasto e fare clic sul collegamento. Puoi vedere nella nuova e-mail che i contenuti nel corpo dell'e-mail sono visualizzati nella stessa riga.

Per visualizzare il corpo dell'e-mail in righe separate, è necessario modificare il contenuto della cella aggiungendo il codice del carattere di ritorno a capo %0A al testo in cui è necessario inserire un'interruzione di riga. Vedi screenshot:


1.1.1.5 Specificare il testo da visualizzare per il collegamento ipertestuale

Nei passaggi precedenti, abbiamo terminato l'argomento Link_location con i campi e-mail. In questa sezione, finiremo il prossimo argomento [friendly_name].

In questo caso, voglio che la cella del collegamento ipertestuale visualizzi il testo come "E-mail a xx”, dove xx è il nome del destinatario in A2. Quindi, la formula in F2 dovrebbe essere modificata in:

=HYPERLINK("mailto:" & B2 & "?cc=" & C2 & "&subject="& D2 & "&body="& E2, "Email to "&A2)

Premere il tasto entrare chiave per ottenere il risultato.

Seleziona questa cella della formula e trascinala Maniglia di riempimento automatico giù per creare altri collegamenti ipertestuali e-mail. Vedi screenshot:


1.1.2 Invia e-mail da Excel con la funzione Collegamento ipertestuale

Fatta eccezione per l'utilizzo della formula di collegamento ipertestuale sopra, è possibile creare manualmente un collegamento ipertestuale e-mail con il inserire collegamento ipertestuale funzione in Excel. Questa sezione ti mostrerà i passaggi.

1. Fare clic con il pulsante destro del mouse su un'e-mail in cui si desidera inserire un collegamento ipertestuale, selezionare Link dal menu di scelta rapida.

2. Nel spuntare Inserisci collegamento ipertestuale finestra di dialogo, è necessario configurare come segue.

2.1) Seleziona Indirizzo email nel riquadro di sinistra.
2.2) nel Testo da visualizzare casella di testo, digita il testo che desideri visualizzare nella cella;
Suggerimenti:: Non è possibile utilizzare i riferimenti di cella in questa finestra di dialogo, quindi è necessario digitare manualmente i campi dell'e-mail come segue.
2.3) nel Indirizzo email casella di testo, è necessario digitare i seguenti indirizzi e-mail.
mailto: indirizzo email
Si prega di sostituire il testo "indirizzo email” con il tuo vero indirizzo email. Se hai più di un indirizzo email, separali da punto e virgola.
2.4) nel Oggetto casella di testo, puoi specificare l'oggetto dell'e-mail e il corpo dell'e-mail proprio qui. Si prega di configurare come segue:
Oggetto dell'e-mail&body=Corpo dell'e-mail
In questo caso scrivo Vendita mensile&body=Ciao,%0AEmail ricevuta.
> dove l'oggetto è Vendita mensile;
ed
> il corpo dell'email è:
Ciao,
E-mail ricevuta. (%0A è il codice carattere di ritorno a capo che può essere riconosciuto da Outlook)
2.5) Fare clic su OK pulsante per salvare il collegamento ipertestuale. Vedi screenshot:

Quando si fa clic sul collegamento ipertestuale, verrà creata un'e-mail di Outlook con i campi A, Oggetto e Corpo specificati, come mostrato nello screenshot seguente.

Note:

1) Con questo metodo, dovevi creare manualmente i collegamenti ipertestuali e-mail ciascuno.
2) Non è possibile aggiungere il campo Cc alle e-mail con questo metodo. Quindi, se hai bisogno del campo Cc, aggiungilo dalla nuova finestra di posta elettronica di apertura.

1.2 Invia e-mail a più destinatari in celle con script VBA

Nell'esempio sopra, puoi vedere più indirizzi email visualizzati in una cella, separati da punto e virgola. Se hai un elenco di indirizzi e-mail come mostrato nello screenshot qui sotto e desideri inviare un'e-mail o un'e-mail indipendente a tutti loro, il seguente codice VBA può farti un favore.


1.2.1 Invia un'e-mail a più destinatari in celle con script VBA

1. Nel foglio di lavoro che contiene tutti gli indirizzi e-mail a cui desideri inviare l'e-mail. premi il altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Modulo, e quindi incollare il codice seguente nel file Modulo (codice) finestra.

Codice VBA: invia e-mail a un elenco di indirizzi e-mail

Sub sendmultiple()
'updateby Extendoffice 20220802
    Dim xOTApp As Object
    Dim xMItem As Object
    Dim xCell As Range
    Dim xRg As Range
    Dim xEmailAddr As String
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the addresses list:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xOTApp = CreateObject("Outlook.Application")
    For Each xCell In xRg
        If xCell.Value Like "*@*" Then
            If xEmailAddr = "" Then
                xEmailAddr = xCell.Value
            Else
                xEmailAddr = xEmailAddr & ";" & xCell.Value
            End If
        End If
    Next
    Set xMItem = xOTApp.CreateItem(0)
    With xMItem
        .To = xEmailAddr
        .Subject = "Test"
        .Body = "Dear " _
                & vbNewLine & vbNewLine & _
                "This is a test email " & _
                "sending in Excel"
        .Display
    End With
End Sub

3. premi il F5 chiave per eseguire il codice e a Kutools for Excel si apre la finestra di dialogo. Seleziona l'elenco di indirizzi e-mail e fai clic su OK.

Note:

1) Se non si desidera visualizzare la finestra di dialogo sopra e si desidera specificare direttamente l'intervallo di indirizzi e-mail nel codice, sostituire questa riga:
Imposta xRg = Application.InputBox("Seleziona l'elenco degli indirizzi:", "Kutools per Excel", xTxt, , , , , 8)
con
Imposta xRg = Intervallo ("A2:A7")
2) È possibile specificare l'oggetto e il corpo dell'e-mail nelle seguenti righe:
.Oggetto = "Test"
.Body = "Dear " _
        & vbNewLine & vbNewLine & _
        "This is a test email " & _
        "sending in Excel"
3) Per inviare direttamente l'e-mail senza aprire la seguente nuova finestra di messaggio, è necessario sostituire questa riga:
.Schermo
con
.Spedire

Dopo aver eseguito il codice, tutti gli indirizzi e-mail nell'intervallo selezionato vengono visualizzati nel campo A della finestra del messaggio. Vedi screenshot:


1.2.2 Inviare e-mail separatamente a ciascun destinatario elencato nelle celle con script VBA

Il codice sopra aggiunge tutti gli indirizzi e-mail nell'intervallo selezionato al campo A della finestra del messaggio. Se desideri inviare e-mail a ciascun indirizzo e-mail elencato nelle celle separatamente senza consentire loro di vedere gli indirizzi e-mail reciproci, puoi provare il seguente script VBA.

1. Nel foglio di lavoro che contiene tutti gli indirizzi e-mail a cui desideri inviare le e-mail. premi il altro + F11 chiavi per aprire la finestra di Microsoft Visual Basic, Applicazioni.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Modulie quindi incollare il codice seguente nella finestra del modulo (codice).

Codice VBA: invia e-mail a ciascun indirizzo e-mail elencato nelle celle separatamente

Sub SendEmailToAddressInCells()
'Updated by Extendoffice 20220802
    Dim xRg As Range
    Dim xRgEach As Range
    Dim xRgVal As String
    Dim xAddress As String
    Dim xOutApp As Outlook.Application
    Dim xMailOut As Outlook.MailItem
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the addresses list", "KuTools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xRg = xRg.SpecialCells(xlCellTypeConstants, xlTextValues)
    For Each xRgEach In xRg
        xRgVal = xRgEach.Value
        If xRgVal Like "?*@?*.?*" Then
            Set xMailOut = xOutApp.CreateItem(olMailItem)
            With xMailOut
                .To = xRgVal
                .Subject = "Test"
                .Body = "Dear " _
                      & vbNewLine & vbNewLine & _
                        "This is a test email " & _
                        "sending in Excel"
                .Display
                '.Send
            End With
        End If
    Next
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

3. Quindi fare clic Strumenti > Riferimenti. Nel Riferimenti - VBAProject finestra di dialogo, trova e controlla il Libreria oggetti di Microsoft Outlook 16.0 casella e quindi fare clic su OK pulsante per salvare le modifiche.

4. premi il F5 chiave per eseguire il codice e a Kutools for Excel si apre la finestra di dialogo. Selezionare l'elenco di indirizzi e-mail e fare clic su OK.

Note:

1) Se non si desidera visualizzare la finestra di dialogo sopra e si desidera specificare direttamente l'intervallo di indirizzi e-mail nel codice, sostituire questa riga:
Imposta xRg = Application.InputBox("Seleziona l'elenco degli indirizzi:", "Kutools per Excel", xTxt, , , , , 8)
con
Imposta xRg = Intervallo ("A2:A7")
2) È possibile specificare l'oggetto e il corpo dell'e-mail nelle seguenti righe:
.Subject = "Test"
.Body = "Dear " _
        & vbNewLine & vbNewLine & _
        "This is a test email " & _
        "sending in Excel"
3) Per inviare direttamente l'e-mail senza aprire le seguenti finestre di messaggio, è necessario sostituire questa riga:
.Schermo
con
.Spedire

In questo esempio, ci sono sei indirizzi e-mail nell'intervallo selezionato, quindi verranno create automaticamente sei finestre di messaggi di Outlook con indirizzi e-mail separati elencati nel campo A, come mostrato nello screenshot seguente.

5. Infine, fare clic su Invia pulsante per inviare l'e-mail uno per uno.


2. Inserisci allegati o firma di Outlook nelle e-mail inviate da Excel (con script VBA)

Questa sezione ti mostrerà come inserire allegati o firma predefinita di Outlook nelle e-mail inviate da Excel.

2.1 Inserire allegati nelle email inviate da Excel

Di seguito descriviamo i diversi casi di inserimento degli allegati e puoi scegliere il metodo in base alle tue esigenze. In questa sezione, puoi imparare a (fare clic su uno qualsiasi dei seguenti collegamenti per passare al metodo corrispondente):


2.1.1 Invia tramite e-mail un determinato file come allegato

È possibile applicare il seguente codice VBA per inviare tramite posta elettronica uno o più file in una cartella come allegati da Excel.

1. premi il altro + F11 chiavi.

2. In apertura Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Moduli. Quindi incolla il seguente codice VBA nella finestra del modulo (codice).

Codice VBA: invia file di posta elettronica in una cartella come allegati da Excel

Sub EmailWithAttachments()
'Updated by Extendoffice 20220802
    Dim xStrFile As String
    Dim xFilePath As String
    Dim xFileDlg As FileDialog
    Dim xFileDlgItem As Variant
    Dim xOutApp As Outlook.Application
    Dim xMailOut As Outlook.MailItem
    Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailOut = xOutApp.CreateItem(olMailItem)
    Set xFileDlg = Application.FileDialog(msoFileDialogFilePicker)
    If xFileDlg.Show = -1 Then
        With xMailOut
            .BodyFormat = olFormatRichText
            .To = ""
            .Subject = "test"
            .HTMLBody = "test"
            For Each xFileDlgItem In xFileDlg.SelectedItems
                .Attachments.Add xFileDlgItem
            Next xFileDlgItem
            .Display
        End With
    End If
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

Note:

1) In fila .A = , si prega di sostituire con l'indirizzo email del tuo destinatario;
2) Modificare separatamente l'oggetto dell'e-mail e il corpo dell'e-mail nella riga .Subject = "test" ed .HTMLBody = "test";
3) Puoi aggiungere i destinatari Cc e Ccn di cui hai bisogno. Basta aggiungere le seguenti due righe sotto la riga.A = .
.CC = "indirizzo email"
.BCC = "indirizzo email"

3. Quindi fare clic Strumenti > Riferimenti. Nel Riferimenti - VBAProject finestra di dialogo, trova e controlla il Libreria oggetti di Microsoft Outlook 16.0 casella e quindi fare clic su OK pulsante per salvare le modifiche.

4. premi il F5 chiave per eseguire il codice, quindi un Scopri la nostra gamma di prodotti viene visualizzata la finestra, selezionare i file che è necessario allegare nell'e-mail, quindi fare clic OK.

Quindi viene visualizzata una finestra di messaggio. Puoi vedere che i file selezionati vengono visualizzati come allegati nel campo Allegati.


2.1.2 Inviare per e-mail il foglio di lavoro corrente come allegato

Se desideri inviare tramite e-mail il foglio di lavoro corrente come allegato da Excel, puoi applicare lo script VBA in questa sezione.

1. premi il altro + F11 chiavi.

2. In apertura Microsoft Visual Basic, Applications Edition finestra, fare clic insert > Moduli. Quindi incolla il seguente codice VBA in Modulo (codice) finestra.

Codice VBA: invia per e-mail il foglio di lavoro corrente come allegato

Sub SendWorkSheet()
'Update by Extendoffice 20220802
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Application.ScreenUpdating = False
Set Wb = Application.ActiveWorkbook
ActiveSheet.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
    xFile = ".xlsx"
    xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
    If Wb2.HasVBProject Then
        xFile = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    Else
        xFile = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    End If
Case Excel8:
    xFile = ".xls"
    xFormat = Excel8
Case xlExcel12:
    xFile = ".xlsb"
    xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
    .To = ""
    .CC = "Email Address"
    .BCC = "Email Address"
    .Subject = "kte features"
    .Body = "Please check and read this document."
    .Attachments.Add Wb2.FullName
    .Display
    '.Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Application.ScreenUpdating = True
End Sub

Note:

1) Nella riga.A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
2) Modificare separatamente l'oggetto dell'e-mail e il corpo dell'e-mail nella riga .Subject = "kte features" ed .Body = "Controlla e leggi questo documento.";
3) Nelle due righe seguenti:
.CC = "indirizzo email"
.BCC = "indirizzo email"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “indirizzo email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.

3. premi il F5 per eseguire il codice, il foglio di lavoro corrente viene salvato come cartella di lavoro di Excel e inserito automaticamente in una finestra di messaggio come allegato. Vedi screenshot:

Nota: La cartella di lavoro allegata che contiene solo il foglio di lavoro corrente ha lo stesso nome della cartella di lavoro originale. E il tempo in cui esegui il codice viene aggiunto anche al nome della cartella di lavoro.


2.1.3 Inviare tramite posta elettronica la cartella di lavoro corrente come allegato

Dopo aver appreso il codice VBA per inviare tramite e-mail il foglio di lavoro corrente come allegato da Excel, qui forniamo un altro script VBA per aiutarti a inviare tramite e-mail l'intera cartella di lavoro come allegato. Si prega di fare come segue.

1. premi il altro + F11 chiavi.

2. In apertura Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Modulo. Quindi incolla il seguente codice VBA nella finestra del modulo (codice).

Codice VBA: invia tramite e-mail la cartella di lavoro corrente come allegato da Excel

Sub SendWorkBook()
'Update by Extendoffice 20220802
Dim OutlookApp As Object
Dim OutlookMail As Object
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
On Error Resume Next
With OutlookMail
    .To = ""
    .CC = "Email Address"
    .BCC = "Email Address"
    .Subject = "kte feature"
    .Body = "Hello, please check and read this document, thank you."
    .Attachments.Add Application.ActiveWorkbook.FullName
    .Display
    '.Send
End With
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub

Note:

1) In fila .A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
2) Modificare separatamente l'oggetto dell'e-mail e il corpo dell'e-mail nella riga .Subject = "kte features" ed .Body = "Controlla e leggi questo documento.";
3) Nelle due righe seguenti:
.CC = "indirizzo email"
.BCC = "indirizzo email"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “indirizzo email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.

3. premi il F5 per eseguire il codice, la cartella di lavoro corrente viene inserita automaticamente in una finestra di messaggio come allegato. Vedi screenshot:


2.1.4 Inviare tramite e-mail l'intera cartella di lavoro come allegato PDF

Per la maggior parte delle persone, tendono a salvare una cartella di lavoro di Excel come file PDF e quindi a inviarla come allegato ad altri. In questa sezione, ti mostrerò un modo per inviare e-mail direttamente da Excel con la cartella di lavoro aperta corrente come allegato PDF senza dover salvare manualmente la cartella di lavoro come file PDF.

1. premi il altro + F11 chiavi.

2. In apertura Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Modulo. Quindi incolla il seguente codice VBA nella finestra del modulo (codice).

Codice VBA: invia tramite e-mail l'intera cartella di lavoro come allegato PDF

Sub SendWorkBookAsPDF()
'Update 20220803
Dim Wb As Workbook
Dim FilePath As String
Dim FileName As String
Dim xOutApp As Object
Dim xOutMail As Object
On Error Resume Next

Application.ScreenUpdating = False
Set Wb = Application.ActiveWorkbook
FileName = Left(Wb.Name, (InStrRev(Wb.Name, ".", -1, vbTextCompare) - 1)) & Format(Now, "dd-mmm-yy h-mm-ss") & ".pdf"
FilePath = Environ$("temp") & "\" & FileName

Wb.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
    FilePath, Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
    False

Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
With xOutMail
       .To = ""
       .CC = "Email Address"
       .BCC = "Email Address"
       .Subject = "test"
       .Body = "test"
       .Attachments.Add FilePath
       .Display   'or use .Send
   End With
Kill FilePath
Set xOutMail = Nothing
Set xOutApp = Nothing
Application.ScreenUpdating = True
End Sub

Note:

1) In fila .A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
2) Modificare separatamente l'oggetto dell'e-mail e il corpo dell'e-mail nella riga .Subject = "test" ed .Corpo = "prova";
3) Nelle due righe seguenti:
.CC = "Indirizzo e-mail"
.BCC = "Indirizzo e-mail"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “Email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.
4) Il nome del file PDF sarà lo stesso del nome della cartella di lavoro originale. E il tempo in cui esegui il codice verrà aggiunto anche al nome della cartella di lavoro. Se non è necessario aggiungere il timestamp al nome del file, rimuovere & Formato(Ora, "gg-mmm-aa h-mm-ss") dalla riga seguente.
FileName = Left(Wb.Name, (InStrRev(Wb.Name, ".", -1, vbTextCompare) - 1)) & Format(Now, "dd-mmm-yy h-mm-ss") & ".pdf "

3. premi il F5 chiave per eseguire il codice. Quindi la cartella di lavoro corrente viene inserita automaticamente in una nuova finestra di messaggio come allegato di un file PDF. Vedi screenshot:


2.1.5 Inviare per e-mail il foglio di lavoro corrente come allegato PDF

Ad esempio, esiste una cartella di lavoro denominata "Vendite mensili" e hai terminato una tabella del rapporto sulle vendite in un foglio di lavoro denominato "rapporto sulle vendite" e desideri inviare questo foglio di lavoro come file PDF ai tuoi colleghi. Il seguente codice VBA può farti un favore.

1. premi il altro + F11 chiavi.

2. In apertura Microsoft Visual Basic, Applications Edition finestra, fare clic insert > Modulo. Quindi incolla il seguente codice VBA nella finestra del modulo (codice).

Codice VBA: invia per e-mail il foglio di lavoro corrente come allegato PDF

Sub SendWorkSheetToPDF()
'Update by Extendoffice 20220803
Dim Wb As Workbook
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Set Wb = Application.ActiveWorkbook
FileName = Wb.FullName
xIndex = VBA.InStrRev(FileName, ".")
If xIndex > 1 Then FileName = VBA.Left(FileName, xIndex - 1)
FileName = FileName & "_" + ActiveSheet.Name & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=FileName
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
    .To = ""
    .CC = "Email Address"
    .BCC = "Email Address"
    .Subject = "test"
    .Body = "test"
    .Attachments.Add FileName
    .Display
    '.Send
End With
Kill FileName
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub

Note:

1) In fila .A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
2) Modificare separatamente l'oggetto dell'e-mail e il corpo dell'e-mail nella riga .Subject = "test" ed .Corpo = "prova";
3) Nelle due righe seguenti:
.CC = "Indirizzo e-mail"
.BCC = "Indirizzo e-mail"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “Email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.
4) Il nome del file PDF sarà: il nome della cartella di lavoro originale_il nome del foglio di lavoro originale. In questo caso, il nome del PDF sarà Report mensile vendite_vendite.

3. premi il F5 chiave per eseguire il codice. Quindi il foglio di lavoro corrente viene inserito automaticamente in una nuova finestra di messaggio come allegato di un file PDF. Vedi screenshot:


2.2 Inserisci la firma di Outlook nelle email inviate da Excel

Prendi il caso precedente come esempio, applichi il codice VBA sopra per inviare il foglio di lavoro corrente come allegato di un file PDF da Excel, ma la firma di Outlook non può essere aggiunta alla finestra del messaggio. Per mantenere la firma predefinita di Outlook nell'e-mail inviata da Excel, il metodo seguente sarà di aiuto.

Di seguito sono elencati due codici VBA.

Codice VBA 1: il codice aiuta a conservare la firma di Outlook.

Codice VBA 2: il codice aiuta a inviare tramite e-mail il foglio di lavoro corrente come allegato PDF.

Codice VBA 1: conserva la firma di Outlook

.HTMLBody = "Email body" & "
" & .HTMLBody

Codice VBA 2: invia per e-mail il foglio di lavoro corrente come allegato PDF

Sub SendWorkSheetToPDF()
'Update by Extendoffice 20220803
Dim Wb As Workbook
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Set Wb = Application.ActiveWorkbook
FileName = Wb.FullName
xIndex = VBA.InStrRev(FileName, ".")
If xIndex > 1 Then FileName = VBA.Left(FileName, xIndex - 1)
FileName = FileName & "_" + ActiveSheet.Name & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=FileName
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
    .To = ""
    .CC = "Email Address"
    .BCC = "Email Address"
    .Subject = "test"
    .Body = "test"
    .Attachments.Add FileName
    .Display
    '.Send
End With
Kill FileName
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub

1. Normalmente, è necessario premere il tasto altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Moduli. Quindi incolla il codice VBA 2 sopra nella finestra del modulo (codice).

3. Per conservare la firma predefinita di Outlook nell'e-mail inviata da Excel, è necessario modificare il codice VBA 2 come segue:

1) Sostituire il file .Corpo coincide Codice VBA 1;
2) Spostare la linea .Schermo sotto la linea Con OutlookMail (o con xMailOut in altri codici). Vedi screenshot:

Ecco il codice completo dopo la modifica.

Sub SendWorkSheetToPDF()
'Update by Extendoffice 20220803
Dim Wb As Workbook
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Set Wb = Application.ActiveWorkbook
FileName = Wb.FullName
xIndex = VBA.InStrRev(FileName, ".")
If xIndex > 1 Then FileName = VBA.Left(FileName, xIndex - 1)
FileName = FileName & "_" + ActiveSheet.Name & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=FileName
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
    .Display
    .To = ""
    .CC = "Email Address"
    .BCC = "Email Address"
    .Subject = "test"
    .HTMLBody = "Email body" & "
" & .HTMLBody .Attachments.Add FileName '.Send End With Kill FileName Set OutlookMail = Nothing Set OutlookApp = Nothing End Sub

4. premi il F5 chiave per eseguire il codice. Quindi otterrai una nuova finestra di messaggio con il foglio di lavoro corrente allegato come file PDF, mentre la firma predefinita di Outlook verrà inserita automaticamente alla fine del corpo dell'e-mail.


3. Invia automaticamente e-mail da Excel quando viene soddisfatta una condizione (con script VBA)

Negli esempi precedenti, è necessario eseguire il codice manualmente per ottenere la consegna dell'e-mail. Se desideri attivare il codice automaticamente quando viene soddisfatta una determinata condizione, ad esempio quando una cella raggiunge un determinato valore, quando il valore di una cella cambia, quando viene raggiunta una data, ecc., l'e-mail verrà inviata automaticamente. Questa sezione elenca le condizioni che gli utenti di Excel hanno cercato spesso in Google per aiutarti a inviare automaticamente e-mail da Excel quando viene soddisfatta una determinata condizione.

3.1 Invia automaticamente un'e-mail quando una cella raggiunge un determinato valore

Come mostrato nella schermata seguente, supponiamo di avere una tabella delle vendite con la cella D6 contenente il totale delle vendite. Vuoi inviare automaticamente un'e-mail al tuo capo in base al totale delle vendite, ad esempio, creare o inviare automaticamente un'e-mail quando il totale delle vendite supera 10000 ma se il totale delle vendite è uguale o inferiore a 10000, non viene eseguita alcuna azione.

1. Nel foglio di lavoro contiene la tabella di vendita, fare clic con il pulsante destro del mouse sulla scheda del foglio e fare clic Visualizza codice dal menu di scelta rapida.

2. In apertura Microsoft Visual Basic, Applications Edition finestra, incolla il seguente codice VBA nel file Foglio (Codice) finestra.

Codice VBA: invia automaticamente un'e-mail quando una cella raggiunge un determinato valore in Excel

Dim xRg As Range
'Update by Extendoffice 20200803
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Cells.Count > 1 Then Exit Sub
Set xRg = Intersect(Range("D6"), Target)
If xRg Is Nothing Then Exit Sub
If IsNumeric(Target.Value) And Target.Value > 10000 Then
Call Mail_small_Text_Outlook
End If
End Sub
Sub Mail_small_Text_Outlook()
Dim xOutApp As Object
Dim xOutMail As Object
Dim xMailBody As String
Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
xMailBody = "Hi boss" & vbNewLine & vbNewLine & _
"Total sales of over $10,000 in January: " & Range("D6")
On Error Resume Next
With xOutMail
.To = ""
.CC = "Email address"
.BCC = "Email address"
.Subject = "test"
.Body = xMailBody
.Display 'or use .Send
End With
On Error GoTo 0
Set xOutMail = Nothing
Set xOutApp = Nothing
End Sub

Private Sub Worksheet_Calculate()
Dim xI As Integer
Dim xRg As Range
Set xRg = Range("D6")
On Error GoTo Err01
xI = Int(xRg.Value)
If xI > 10000 Then
Call Mail_small_Text_Outlook
End If
Err01:
End Sub

Note:

1) D6 è la cella in base al cui valore invierai un'e-mail.
2) > 10000 è la condizione, il che significa che verrà inviata un'e-mail quando il valore in D6 è maggiore di 10000.
3) Intervallo ("D6") nella riga seguente significa che il corpo dell'e-mail farà riferimento al valore in D6.
xMailBody = "Hi boss" & vbNewLine & vbNewLine & _
"Total sales of over $10,000 in January: " & Range("D6")
4) In fila .A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
5) Modificare l'oggetto dell'e-mail nella riga .Subject = "test".
6) Nelle due righe seguenti:
.CC = "Indirizzo e-mail"
.BCC = "Indirizzo e-mail"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “Email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.

D'ora in poi, quando il valore nella cella D6 supera 10000, verrà creata un'e-mail come mostrato nello screenshot seguente.


3.2 Invia automaticamente un'e-mail quando cambia il valore di una cella

Come mostrato nella schermata seguente, supponi di ricevere una cartella di lavoro che contiene le vendite mensili in diversi fogli di lavoro e il totale delle vendite in un foglio di lavoro. È necessario verificare il totale delle vendite e, se il totale delle vendite viene modificato, rispedire la cartella di lavoro al mittente e informare il mittente che la cella è stata modificata.

1. Nel foglio di lavoro contiene la tabella di vendita, fare clic con il pulsante destro del mouse sulla scheda del foglio e fare clic Visualizza codice dal menu di scelta rapida.

2. In apertura Microsoft Visual Basic, Applications Edition finestra, incolla il seguente codice VBA nella finestra Foglio (Codice).

Codice VBA: invia automaticamente un'e-mail quando cambia un valore di cella specificato

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20220803
Dim xRgSel As Range
Dim xOutApp As Object
Dim xMailItem As Object
Dim xMailBody As String
Dim xBoolean As Boolean
Dim xItsRG As Range
Dim xDDs As Range
Dim xDs As Range
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
xBoolean = False
Set xRg = Range("B14")

Set xItsRG = Intersect(Target, xRg)
Set xDDs = Intersect(Target.DirectDependents, xRg)
Set xDs = Intersect(Target.Dependents, xRg)
If Not (xItsRG Is Nothing) Then
Set xRgSel = xItsRG
xBoolean = True
ElseIf Not (xDDs Is Nothing) Then
Set xRgSel = xDDs
xBoolean = True
ElseIf Not (xDs Is Nothing) Then
Set xRgSel = xDs
xBoolean = True
End If

ActiveWorkbook.Save
If xBoolean Then
Debug.Print xRgSel.Address

Set xOutApp = CreateObject("Outlook.Application")
Set xMailItem = xOutApp.CreateItem(0)
xMailBody = "The cell " & xRgSel.Address(False, False) & _
" in the worksheet '" & Me.Name & "' were modified on " & _
Format$(Now, "mm/dd/yyyy") & " at " & Format$(Now, "hh:mm:ss") & _
" by " & Environ$("username") & "."

With xMailItem
.To = ""
.CC = "Email address"
.BCC = "Email address"
.Subject = "Worksheet modified"
.Body = xMailBody
.Attachments.Add (ThisWorkbook.FullName)
.Display
End With
Set xRgSel = Nothing
Set xOutApp = Nothing
Set xMailItem = Nothing
End If
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

Note: Nel codice,

1) B14 nel codice significa che quando il valore della cella B14 cambia, invierai un'e-mail.
2) In fila .A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
3) Modificare l'oggetto dell'e-mail nella riga .Subject = "Foglio di lavoro modificato".
4) Nelle due righe seguenti:
.CC = "Indirizzo e-mail"
.BCC = "Indirizzo e-mail"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “Email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.

D'ora in poi, quando il valore nella cella B14 cambia, verrà creato automaticamente un messaggio di Outlook come mostrato nello screenshot seguente.


3.3 Invia automaticamente un'e-mail quando viene salvata una cartella di lavoro

Se si dispone di una cartella di lavoro che deve essere condivisa con altri dopo la modifica, normalmente è necessario salvare la cartella di lavoro, avviare il client di posta elettronica, creare una nuova e-mail con questa cartella di lavoro allegata, comporre i campi corrispondenti quindi inviare l'e-mail. Questa sezione ti mostrerà un metodo per creare automaticamente un'e-mail ogni volta che salvi la cartella di lavoro. Si prega di fare come segue.

1. premi il altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. In questa finestra, fare doppio clic Questa cartella di lavoro nel Progetto riquadro, quindi incolla il seguente codice VBA nel file ThisWorkbook (codice) finestra.

Codice VBA: invia automaticamente un'e-mail quando viene salvata una cartella di lavoro

Private Sub Workbook_AfterSave(ByVal Success As Boolean)
'Updated by Extendoffice 20220804
    Dim xOutApp As Object
    Dim xMailItem As Object
    Dim xName As String
    On Error Resume Next
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailItem = xOutApp.CreateItem(0)
    xName = ActiveWorkbook.FullName
    With xMailItem
        .To = ""
        .CC = "Email address"
        .BCC = "Email address"
        .Subject = "The workbook has been updated"
        .Body = "Hi," & Chr(13) & Chr(13) & "File is now updated."
        .Attachments.Add xName
        .Display
       '.send
    End With
    Set xMailItem = Nothing
    Set xOutApp = Nothing
End Sub

Note: Nel codice,

1) In fila .A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
2) Modificare separatamente l'oggetto e il corpo dell'e-mail nelle righe .Subject = "La cartella di lavoro è stata aggiornata" ed .Body = "Ciao" & Chr(13) & Chr(13) & "Il file è ora aggiornato.".
3) Nelle due righe seguenti:
.CC = "Indirizzo e-mail"
.BCC = "Indirizzo e-mail"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “Email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.

3. D'ora in poi, quando si salva la cartella di lavoro premendo il tasto Ctrl + S tasti o facendo clic su Risparmi pulsante, verrà creata automaticamente un'e-mail di Outlook. Puoi vedere che la cartella di lavoro corrente è allegata come allegato e i campi sono popolati con il contenuto specificato. Vedi screenshot:

Suggerimenti:: se utilizzi frequentemente questa cartella di lavoro, qui ti consigliamo di salvare la cartella di lavoro come file Cartella di lavoro abilitata per Excel per salvare lo script VBA per un utilizzo futuro. I passi sono come segue.

1) Fare clic Compila il > Salva con nome, quindi scegli una cartella in cui salvare il file.
2) nel Salva con nome finestra di dialogo, rinomina il file come ti serve nel file Nome del file casella di testo, scegli Cartella di lavoro abilitata per Excel nel Salva come tipo elenco a discesa e infine fare clic su Risparmi pulsante. Vedi screenshot:


3.4 Invia automaticamente un'e-mail a un'ora specifica

Supponiamo che tu debba inviare un'e-mail con una cartella di lavoro per l'assegnazione di attività a qualcuno ogni venerdì mattina alle 9:XNUMXe desideri farlo automaticamente in Excel senza dover utilizzare manualmente il client di posta elettronica. Questa sezione ti mostrerà il metodo per farlo.

1. premi il altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Modulo. Quindi incolla il seguente codice VBA nella finestra del modulo.

Codice VBA1: invia tramite e-mail la cartella di lavoro corrente come allegato da Excel

Sub Timer()
    If Weekday(Date) = vbFriday Then
        SendWorkBook
        Application.OnTime TimeValue("09:00:00"), "Timer"
    Else
        Application.OnTime TimeValue("09:00:00"), "Timer"
    End If
End Sub

Sub SendWorkBook()
'Update by Extendoffice 20220802
Dim OutlookApp As Object
Dim OutlookMail As Object
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
On Error Resume Next
With OutlookMail
    .To = ""
    .CC = "Email Address"
    .BCC = "Email Address"
    .Subject = "kte feature"
    .Body = "Hello, please check and read this document, thank you."
    .Attachments.Add Application.ActiveWorkbook.FullName
    .Display
    '.Send
End With
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub

3. In questa finestra, fare doppio clic Questa cartella di lavoro nel Progetto riquadro, quindi incolla il seguente codice VBA nel file ThisWorkbook (codice) finestra.

Codice VBA 2: invia automaticamente un'e-mail a un'ora specifica

Private Sub Workbook_Open()
    Application.OnTime TimeValue("09:00:00"), "Timer"
End Sub

Note:

1) Nel codice VBA 1, Venerdì nella riga successiva significa che l'e-mail verrà inviata automaticamente ogni venerdì;
Se Giorno della settimana(Data) = vbVenerdì Allora
2) Nel codice VBA 1 e nel codice VBA 2, l'ora 09:00:00 significa che l'e-mail verrà inviata alle 9:XNUMX di un determinato giorno.
Puoi cambiare il giorno e l'ora di cui hai bisogno.
3) Quando il codice viene eseguito, verrà creata un'e-mail. Se non vuoi far apparire la finestra del messaggio e devi inviarlo direttamente, rimuovi la riga .Schermo dal codice VBA 1 e rimuovere il apostrofo prima della linea '.Inviare.

4. Salvare i codici e quindi salvare la cartella di lavoro come cartella di lavoro con attivazione macro di Excel come segue.

4.1) Fare clic Compila il > Salva con nome, quindi scegli una cartella in cui salvare il file.
4.2) nel Salva con nome finestra di dialogo, rinomina il file come ti serve nel file Nome del file casella di testo, scegli Cartella di lavoro abilitata per Excel nel Salva come tipo elenco a discesa e infine fare clic su Risparmi pulsante. Vedi screenshot:

5. Apri la cartella di lavoro con abilitazione macro salvata, quindi verrà creata o inviata automaticamente un'e-mail all'arrivo del giorno e dell'ora.


4. Argomenti aggiuntivi

Questa sezione raccoglie altri argomenti che potresti incontrare durante l'invio di e-mail da Excel.

4.1 Invia un'e-mail a un intervallo di celle da Excel (con script VBA)

Supponendo che in un foglio di lavoro Excel sia presente una tabella delle vendite mensili, come mostrato nello screenshot seguente, e che sia necessario inviare questa tabella delle vendite mensili ad altri come contenuto del corpo di un'e-mail o direttamente come allegato. Qui ti forniamo due metodi per farlo.

4.1.1 Invia tramite e-mail un intervallo come parte del contenuto del corpo di Excel

È possibile eseguire il seguente codice VBA per inviare un intervallo di celle come parte del contenuto del corpo dell'e-mail da Excel

1. premi il altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic Strumenti > Riferimenti. E poi controlla il file Libreria oggetti di Microsoft Outlook 16.0 box e clicca OK nel Riferimenti - VBAProject la finestra di dialogo.

3. Clic inserire > Moduli, quindi incolla il seguente codice VBA nel file Modulo (codice) finestra.

Codice VBA: invia un intervallo di celle come parte del contenuto del corpo dell'e-mail da Excel

Sub SendARangeofCells()
'Updated by Extendoffice 20220809
    Dim xRg As Range
    Dim I, J As Long
    Dim xAddress As String
    Dim xMailOut As Object
    Dim xOutApp As Object
    On Error Resume Next
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailOut = xOutApp.CreateItem(olMailItem)
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select range you need to paste into email body", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailOut = xOutApp.CreateItem(olMailItem)
    With xMailOut
        .Subject = "test"
        .To = ""
        .CC = "Email address"
        .BCC = "Email address"
        .HTMLBody = RangetoHTML(xRg)
        .Display
        '.Send
    End With
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

 ' The following VBA script is cited from this page:
 ' https://stackoverflow.com/questions/18663127/paste-excel-range-in-outlook
Function RangetoHTML(rng As Range)
' By Ron de Bruin.
    Dim fso As Object
    Dim ts As Object
    Dim TempFile As String
    Dim TempWB As Workbook

    TempFile = Environ$("temp") & "/" & Format(Now, "dd-mm-yy h-mm-ss") & ".htm"

    'Copy the range and create a new workbook to past the data in
    rng.Copy
    Set TempWB = Workbooks.Add(1)
    With TempWB.Sheets(1)
        .Cells(1).PasteSpecial Paste:=8
        .Cells(1).PasteSpecial xlPasteValues, , False, False
        .Cells(1).PasteSpecial xlPasteFormats, , False, False
        .Cells(1).Select
        Application.CutCopyMode = False
        On Error Resume Next
        .DrawingObjects.Visible = True
        .DrawingObjects.Delete
        On Error GoTo 0
    End With

    'Publish the sheet to a htm file
    With TempWB.PublishObjects.Add( _
         SourceType:=xlSourceRange, _
         Filename:=TempFile, _
         Sheet:=TempWB.Sheets(1).Name, _
         Source:=TempWB.Sheets(1).UsedRange.Address, _
         HtmlType:=xlHtmlStatic)
        .Publish (True)
    End With

    'Read all data from the htm file into RangetoHTML
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set ts = fso.GetFile(TempFile).OpenAsTextStream(1, -2)
    RangetoHTML = ts.ReadAll
    ts.Close
    RangetoHTML = Replace(RangetoHTML, "align=center x:publishsource=", _
                          "align=left x:publishsource=")

    'Close TempWB
    TempWB.Close savechanges:=False

    'Delete the htm file we used in this function
    Kill TempFile

    Set ts = Nothing
    Set fso = Nothing
    Set TempWB = Nothing
End Function

Note: Nel codice,

1) In fila .A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
2) Nelle due righe seguenti:
.CC = "Indirizzo e-mail"
.BCC = "Indirizzo e-mail"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “Email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.

4. premi il F5 chiave per eseguire il codice. Nel spuntato Kutools for Excel finestra di dialogo, selezionare l'intervallo di celle che è necessario inviare come parte del contenuto del corpo di un'e-mail, quindi fare clic OK. Vedi screenshot:

Quindi verrà creata automaticamente un'e-mail di Outlook. Puoi vedere che l'intervallo che hai selezionato nel foglio di lavoro è inserito nel corpo dell'e-mail. Vedi screenshot:


4.1.2 Invia tramite e-mail un intervallo come allegato da Excel

Se è necessario inviare un'e-mail a un intervallo di celle in un foglio di lavoro come allegato da Excel. Puoi provare il seguente codice VBA.

1. premi il altro + F11 chiavi.

2. In apertura Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Moduli. Quindi incolla il seguente codice VBA nel file Modulo (codice) finestra.

Codice VBA: invia tramite e-mail un intervallo come allegato da Excel

Sub SendRange()
'Update 20220809
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim Ws As Worksheet
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim WorkRng As Range
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set Wb = Application.ActiveWorkbook
Wb.Worksheets.Add
Set Ws = Application.ActiveSheet
WorkRng.Copy Ws.Cells(1, 1)
Ws.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
    xFile = ".xlsx"
    xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
    If Wb2.HasVBProject Then
        xFile = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    Else
        xFile = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    End If
Case Excel8:
    xFile = ".xls"
    xFormat = Excel8
Case xlExcel12:
    xFile = ".xlsb"
    xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
    .To = ""
    .CC = "Email address"
    .BCC = "Email address"
    .Subject = "Monthly sales for 2021"
    .Body = "Hello, please check and read this document. "
    .Attachments.Add Wb2.FullName
    .Display
    '.Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Ws.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

Note:

1) In fila .A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
2) Modificare separatamente l'oggetto dell'e-mail e il corpo dell'e-mail nella riga .Subject = "Vendite mensili per il 2021" ed .Body = "Ciao, controlla e leggi questo documento.";
3) Nelle due righe seguenti:
.CC = "indirizzo email"
.BCC = "indirizzo email"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “indirizzo email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.

3. premi il F5 chiave per eseguire il codice. Nel spuntato Kutools for Excel finestra di dialogo, seleziona l'intervallo di celle che devi inviare come allegato in un'e-mail, quindi fai clic su OK. Vedi screenshot:

Quindi verrà creata automaticamente un'e-mail di Outlook. E l'intervallo di celle selezionato nel foglio di lavoro viene salvato come cartella di lavoro di Excel e allegato nella finestra del messaggio. Vedi screenshot:


4.2 Invia e-mail quando si fa clic su un pulsante in Excel

Se è necessario fare clic su un pulsante di comando per attivare una macro per l'invio di un'e-mail da Excel, ad esempio, inviare la cartella di lavoro corrente come allegato ad altri facendo clic su un pulsante di comando nel foglio di lavoro. Puoi seguire i passaggi come segue per farlo.

1. Clic Costruttori > inserire > Pulsante di comando (controllo ActiveX). Quindi disegna un pulsante di comando nel foglio di lavoro.

Suggerimenti:: Se hai già un pulsante di comando, salta questo passaggio.

2. premi il altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra. Nella finestra, fare clic su inserire > Modu, quindi incollare il codice VBA (il codice utilizzato per inviare tramite posta elettronica la cartella di lavoro corrente come allegato da Excel) nella finestra Modulo (codice).

Clicca qui per ricevere il codice.

Note:: qui si trova il nome della macro che hai creato nel passaggio 2 Invia cartella di lavoro.

3. premi il altro + Q i tasti per chiudere il file Microsoft Visual Basic, Applications Edition finestra.

4. Ora devi assegnare la macro al pulsante di comando. Fare clic con il pulsante destro del mouse sul pulsante di comando, selezionare Visualizza codice dal menu del tasto destro.

5. Quindi il file Microsoft Visual Basic, Applications Edition si apre la finestra, puoi vedere che le seguenti due righe sono elencate nel file Foglio (Codice) finestra.

Private Sub CommandButton1_Click()
End Sub

6. Immettere il nome della macro esistente all'interno della procedura secondaria per il pulsante di comando.

7. premi il altro + Q i tasti per chiudere il file Editor di Visual Basice fare clic Costruttori > Modalità di progettazione per disattivare la modalità di progettazione.

Ora puoi fare clic sul pulsante di comando per inviare un'e-mail con la cartella di lavoro corrente come allegato nell'e-mail.


4.3 Invia e-mail da un account e-mail specificato

Normalmente, quando si avvia un'e-mail da Excel con codice VBA, l'account e-mail del mittente è l'account predefinito in Outlook. Supponiamo di aver configurato diversi account di posta elettronica in Outlook e di voler utilizzare un determinato account per inviare le e-mail da Excel invece di utilizzare l'account predefinito. Il seguente codice VBA può aiutare.

In questo caso sono necessari i seguenti codici.

Codice VBA 1:

Dim OutlookMail As Outlook.MailItem

Codice VBA 2:

For Each xAccount In OutlookApp.Session.Accounts
  If VBA.LCase(xAccount.SmtpAddress) = VBA.LCase("") Then 'Specify your email account here
    OutlookMail.SendUsingAccount = xAccount
  End If
Next

Come utilizzare il codice VBA sopra?

1) Nel tuo codice, devi sostituire la riga come "Oscura OutlookMail come oggetto” con codice VBA 1;
2) Aggiungi il codice VBA 2 sotto la riga "On Error Resume Next” nel tuo codice. Quindi specifica l'indirizzo e-mail che utilizzerai per inviare l'e-mail nel codice VBA 2.

In questo esempio, specificheremo un determinato account di posta elettronica per inviare la cartella di lavoro corrente come allegato da Excel. Si prega di fare come segue.

1. premi il altro + F11 chiavi. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic Strumenti > Riferimenti. E poi controlla il file Libreria oggetti di Microsoft Outlook 16.0 box e clicca OK nel Riferimenti - VBAProject la finestra di dialogo.

2. Clic inserire > Moduli. Quindi incolla il seguente codice VBA nel file Modulo (codice) finestra.

Codice VBA: invia la cartella di lavoro corrente come allegato di posta elettronica da Excel tramite un account Outlook specificato

Sub SendWorkBook()
'Update by Extendoffice 20220809
Dim OutlookApp As Object
Dim OutlookMail As Outlook.MailItem 'important! Here can’t be declared as Object
Dim xAccount As Account
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(olMailItem)
On Error Resume Next
'The following lines helps to specify a certian email account
For Each xAccount In OutlookApp.Session.Accounts
  If VBA.LCase(xAccount.SmtpAddress) = VBA.LCase("") Then 'Specify your email account here
    OutlookMail.SendUsingAccount = xAccount
  End If
Next
'End
With OutlookMail
    .To = ""
    .CC = "Email Address"
    .BCC = "Email Address"
    .Subject = "kte feature"
    .Body = "Hello, please check and read this document, thank you."
    .Attachments.Add Application.ActiveWorkbook.FullName
    .Display
    '.Send
End With
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub

3. premi il F5 chiave per eseguire il codice. Quindi viene visualizzato un messaggio di posta elettronica di Outlook, puoi vedere che il file Da campo viene compilato con l'account e-mail specificato nel codice.


4.4 Inviare un'e-mail al raggiungimento di una data

Se è necessario inviare un'e-mail in base a una data di scadenza specifica, ad esempio, come mostrato nella schermata seguente, è presente una tabella del progetto, quando la data di scadenza nell'intervallo E2:E7 è uguale o inferiore a 7 giorni da oggi (supponendo che la data corrente sia il 2022/8/4), verrà inviata automaticamente un'e-mail ai responsabili del progetto corrispondenti e li informerà che il progetto sta per scadere.

1. Nel foglio di lavoro contiene la tabella del progetto, fare clic con il pulsante destro del mouse sulla scheda del foglio e fare clic Visualizza codice dal menu di scelta rapida.

2. In apertura Microsoft Visual Basic, Applications Edition finestra, incolla il seguente codice VBA nel file Foglio (Codice) finestra.

Codice VBA: invia automaticamente un'e-mail quando viene raggiunta una data di scadenza

Public Sub SendMailDueDate()
'Updated by Extendoffice 20220804
Dim xRgDate As Range
Dim xRgSend As Range
Dim xRgText As Range
Dim xRgDone As Range
Dim xOutApp As Object
Dim xMailItem As Object
Dim xLastRow As Long
Dim vbCrLf As String
Dim xMailBody As String
Dim xRgDateVal As String
Dim xRgSendVal As String
Dim xMailSubject As String
Dim i As Long
On Error Resume Next
Set xRgDate = Range("E2:E7") 'Please reference the due date column range
If xRgDate Is Nothing Then Exit Sub
Set xRgSend = Range("C2:C7") 'Please reference the email addresses column range
If xRgSend Is Nothing Then Exit Sub
Set xRgText = Range("D2:D7") 'Please reference the remark column range (the remark used to notify project leaders of the expiration of the project)
If xRgText Is Nothing Then Exit Sub
xLastRow = xRgDate.Rows.Count
Set xRgDate = xRgDate(1)
Set xRgSend = xRgSend(1)
Set xRgText = xRgText(1)
Set xOutApp = CreateObject("Outlook.Application")
For i = 1 To xLastRow
xRgDateVal = ""
xRgDateVal = xRgDate.Offset(i - 1).Value
If xRgDateVal <> "" Then
If CDate(xRgDateVal) - Date <= 7 And CDate(xRgDateVal) - Date > 0 Then
xRgSendVal = xRgSend.Offset(i - 1).Value
xMailSubject = xRgText.Offset(i - 1).Value & " on " & xRgDateVal
vbCrLf = "

" xMailBody = "" xMailBody = xMailBody & "Dear " & xRgSendVal & vbCrLf xMailBody = xMailBody & "Remark : " & xRgText.Offset(i - 1).Value & vbCrLf xMailBody = xMailBody & "" Set xMailItem = xOutApp.CreateItem(0) With xMailItem .Subject = xMailSubject .To = xRgSendVal .CC = "Email address" .BCC = "Email address" .HTMLBody = xMailBody .Display '.Send End With Set xMailItem = Nothing End If End If Next Set xOutApp = Nothing End Sub

Note: Nel codice,

1) Nelle righe seguenti, E2: E7 contiene le date di scadenza in base alle quali invierai le e-mail. C2: C7 contiene gli indirizzi email a cui invierai le email. E D2: D7 contiene i commenti che aggiungerai nel corpo dell'e-mail per notificare ai destinatari che il progetto sta per scadere. Puoi modificare gli intervalli di cui hai bisogno.
Imposta xRgDate = Intervallo ("E2:E7")
Imposta xRgSend = Intervallo ("C2:C7")
Imposta xRgText = Intervallo ("D2:D7")
2) La riga seguente indica che la data di scadenza deve essere maggiore di 1 giorno e uguale o inferiore a 7 giorni dalla data odierna. Puoi cambiarlo di cui hai bisogno.
Se CDate(xRgDateVal) - Data <= 7 e CDate(xRgDateVal) - Data > 0 Allora
3) In fila .A = , si prega di sostituire con l'indirizzo email del vero destinatario. Se hai bisogno di più di un indirizzo email, separali con un punto e virgola.
4) Modificare l'oggetto dell'e-mail nella riga .Subject = "Foglio di lavoro modificato".
5) Nelle due righe seguenti:
.CC = "Indirizzo e-mail"
.BCC = "Indirizzo e-mail"
Se vuoi aggiungere i destinatari cc e bcc, sostituisci il testo “Email” nelle righe con gli indirizzi email di cui hai bisogno.
Se non hai bisogno dei destinatari cc e bcc, aggiungi semplicemente un apostrofo ' prima di ogni riga.

3. premi il F5 chiave per eseguire il codice. Quindi, se la data di scadenza corrisponde alle condizioni, verrà creata l'e-mail corrispondente. In questo caso, verranno create due e-mail come mostrato nello screenshot qui sotto.


5. Uno strumento utile per aiutarti a inviare facilmente e-mail da Excel

Se sei un principiante VBA, i metodi di cui sopra potrebbero non essere facili da gestire. Qui ti consigliamo Kutools for Excel'S Inviare emails caratteristica, con questa funzione, puoi inviare facilmente e-mail da Excel con solo pochi clic. Si prega di fare come segue.

Prima di applicare Kutools for Excel, Per favore scaricalo e installalo prima.

5.1 Crea facilmente una mailing list che includa i campi email di cui hai bisogno

Prima di applicare la funzione Invia e-mail, è necessario creare una mailing list che contenga i campi e-mail necessari. Qui la funzione Crea mailing list può aiutare.

1. Clic Kutools Plus > Crea mailing list.

2. In apertura Crea mailing list finestra, è necessario configurare come segue.

2.1) nel Colonne per la mailing list sezione, controlla i campi che ti servono nella tua email;
2.2) nel Allega i file sezione, seleziona uno o più allegati di cui potresti aver bisogno;
2.3) Specificare una posizione in cui inserire la mailing list;
2.4) Fare clic su Creare pulsante. Vedi screenshot:

Quindi viene creata una tabella di mailing list di esempio come mostrato nella schermata seguente.

3. Ora è necessario sostituire i dati originali nell'esempio con i dati del proprio campo.

Ora hai creato una tabella di una mailing list. Si prega di procedere per applicare il Inviare emails funzione per inviare e-mail da Excel in base ai campi che hai creato.

  Se desideri avere una prova gratuita (30 giorni) di questa utility, fare clic per scaricarlo, quindi andare ad applicare l'operazione secondo i passaggi precedenti.


5.2 Invia facilmente e-mail inclusi i campi che hai creato nella mailing list

Dopo aver creato la mailing list (clicca per sapere come) che contiene i campi di cui potresti aver bisogno nelle tue e-mail, ora puoi inviare e-mail da Excel con questi campi.

1. Selezionare l'intera mailing list, fare clic su Kutools Plus > Inviare emails.

2. Nel Inviare emails finestra di dialogo, eseguire la seguente configurazione.

2.1) I campi vengono popolati nella finestra di dialogo di ogni campo automaticamente dai campi specificati nella mailing list;
Suggerimenti:: Se non hai bisogno di un determinato campo in questo momento, scegli un'opzione vuota nell'elenco a discesa.
2.2) Inserisci segnaposto (opzionale): se è necessario inserire informazioni variabili nel corpo di un'e-mail.
Ad esempio potresti dover inviare una mail a più destinatari con nome personalizzato per ognuno, devi posizionare il cursore nel corpo della mail dove devi inserire il segnaposto, seleziona il campo “E: Nome” (o un altro campo del nome nell'elenco di indirizzi e-mail), quindi fare clic su Inserisci segnaposto pulsante;
Quando i destinatari ricevono l'e-mail, il corpo dell'e-mail rimane lo stesso ma i nomi sono univoci per ciascuno.
2.3) Componi il corpo dell'email di cui hai bisogno;
2.4) Assicurarsi che il Invia email tramite Outlook la casella è selezionata;
2.5) Fare clic su Invia pulsante. Vedi screenshot:

3. Quindi a Kutools for Excel viene visualizzata la finestra di dialogo per dirti quante e-mail vengono inviate, fai clic su OK per chiudere questa finestra di dialogo.

Suggerimenti:: Puoi andare al Oggetti inviati cartella in Outlook per controllare le e-mail che hai inviato.


5.3 Invia facilmente e-mail con corpo HTML (incluso collegamento ipertestuale, immagine, ecc.)

Questa funzione Invia e-mail ti consente di creare un'e-mail html, che include collegamento ipertestuale, immagine, diverse dimensioni dei caratteri e colori dei caratteri, ecc.

Dopo shavasana, sedersi in silenzio; saluti; creando una mailing list che includa i campi email di cui hai bisogno,

Quando si configurare la finestra di dialogo Invia e-mail, puoi arricchire il contenuto del corpo utilizzando le opzioni sulla barra degli strumenti.

Vedi lo screenshot qui sotto:


5.4 Inserisci facilmente la firma predefinita di Outlook durante l'invio di e-mail

Nel metodo sopra, abbiamo dimostrato un codice VBA per aiutarti a inviare e-mail con la firma predefinita di Outlook. Qui con la funzione Invia e-mail, devi solo selezionare un'opzione, quindi la firma predefinita di Outlook verrà inserita nelle e-mail che hai inviato da Excel.

Dopo shavasana, sedersi in silenzio; saluti; creando una mailing list che includa i campi email di cui hai bisogno,

Quando configurare la finestra di dialogo Invia e-mail, devi fare clic Opzioni > Usa le impostazioni della firma di Outlook.

Note:: assicurati che sia visualizzato un segno di spunta prima dell'opzione Usa le impostazioni della firma di Outlook.

Quando i destinatari ricevono l'e-mail, possono vedere la firma predefinita di Outlook visualizzata alla fine del corpo dell'e-mail.


5.5 Invia facilmente e-mail da un account e-mail specifico

Per utilizzare un determinato account e-mail per inviare le e-mail da Excel invece di utilizzare l'account predefinito, la funzione Invia e-mail può anche aiutare a farlo facilmente.

Dopo shavasana, sedersi in silenzio; saluti; creando una mailing list che includa i campi email di cui hai bisogno,

Quando configurare la finestra di dialogo Invia e-mail, devi fare clic Opzioni > Inviato da, quindi fai clic sull'account e-mail da cui devi inviare le e-mail.

Note:: Dopo aver selezionato l'account e-mail, verrà visualizzato un segno di spunta prima di esso.

Clicchi qui per saperne di più su questa funzione Invia e-mail.

  Se desideri avere una prova gratuita (30 giorni) di questa utility, fare clic per scaricarlo, quindi andare ad applicare l'operazione secondo i passaggi precedenti.

In conclusione, l'invio di e-mail da Excel è abbastanza utile nel nostro lavoro quotidiano. Questo articolo copre argomenti più completi sull'invio di e-mail da Excel, se ci sono altri argomenti o soluzioni più semplici, lascia un commento per farmelo sapere.

I migliori strumenti per la produttività in ufficio

🤖 Assistente AI di Kutools: Rivoluziona l'analisi dei dati basandosi su: Esecuzione intelligente   |  Genera codice  |  Crea formule personalizzate  |  Analizzare i dati e generare grafici  |  Richiama le funzioni di Kutools...
Funzioni popolari: Trova, evidenzia o identifica i duplicati   |  Elimina righe vuote   |  Combina colonne o celle senza perdere dati   |   Round senza formula ...
Super ricerca: VLookup a criteri multipli    VLookup a valori multipli  |   VLookup su più fogli   |   Ricerca fuzzy ....
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa   |  Elenco a discesa dipendente   |  Elenco a discesa a selezione multipla ....
Gestore di colonna: Aggiungi un numero specifico di colonne  |  Sposta colonne  |  Attiva/disattiva lo stato di visibilità delle colonne nascoste  |  Confronta intervalli e colonne ...
Funzionalità in primo piano: Messa a fuoco della griglia   |  Vista di progettazione   |   Grande barra delle formule    Gestore di cartelle di lavoro e fogli   |  Resource Library (Testo automatico)   |  Date picker   |  Combina fogli di lavoro   |  Crittografa/decrittografa le celle    Invia e-mail per elenco   |  Super filtro   |   Filtro speciale (filtro grassetto/corsivo/barrato...) ...
I 15 migliori set di strumenti12 Testo Strumenti (aggiungi testo, Rimuovi personaggi, ...)   |   50+ Grafico Tipi (Diagramma di Gantt, ...)   |   40+ Pratico Formule (Calcola l'età in base al compleanno, ...)   |   19 Inserimento Strumenti (Inserisci il codice QR, Inserisci immagine dal percorso, ...)   |   12 Conversione Strumenti (Numeri in parole, Conversione di valuta, ...)   |   7 Unisci e dividi Strumenti (Combina righe avanzate, Celle divise, ...)   |   ... e altro ancora

Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo.  Fai clic qui per ottenere la funzionalità di cui hai più bisogno...

Descrizione


Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations