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

Cum se introduce semnătura Outlook atunci când trimiteți e-mail în Excel?

Presupunând că doriți să trimiteți un e-mail direct în Excel, cum puteți adăuga semnătura implicită Outlook în e-mail? Acest articol oferă două metode pentru a vă ajuta să adăugați semnătura Outlook atunci când trimiteți e-mailuri în Excel.

Introduceți semnătura în e-mailul Outlook atunci când trimiteți prin Excel VBA
Introduceți cu ușurință semnătura Outlook atunci când trimiteți e-mailuri în Excel cu un instrument uimitor

Mai multe tutoriale pentru trimiterea prin poștă în Excel ...


Introduceți semnătura în e-mailul Outlook atunci când trimiteți prin Excel VBA

De exemplu, există o listă de adrese de e-mail într-o foaie de lucru, pentru a trimite e-mailuri la toate aceste adrese în Excel și pentru a adăuga semnătura implicită Outlook în e-mailuri. Vă rugăm să aplicați codul VBA de mai jos pentru a-l realiza.

1. Deschideți foaia de lucru conține lista de adrese de e-mail la care doriți să trimiteți un e-mail, apoi apăsați pe Alt + F11 chei.

2. În deschidere Microsoft Visual Basic pentru aplicații fereastră, faceți clic pe Insera > Modul, și apoi copiați cele de mai jos VBA 2 în fereastra Codului modulului.

3. Acum trebuie să înlocuiți .Corp linie în VBA 2 cu codul în VBA 1. După aceea, mutați linia .Afişa sub linie Cu xMailOut.

VBA 1: șablon de trimitere de e-mailuri cu semnătura implicită Outlook în Excel

.HTMLBody = "This is a test email sending in Excel" & "<br>" & .HTMLBody

VBA 2: trimiteți e-mail la adresele de e-mail specificate în celulele din Excel

Sub SendEmailToAddressInCells()
    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 email address range", "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

Următoarea captură de ecran vă poate ajuta să găsiți cu ușurință diferențele după schimbarea codului VBA.

4. apasă pe F5 tasta pentru a rula codul. Apoi o Kutools pentru Excel caseta de selectare apare, vă rugăm să selectați adresele de e-mail către care veți trimite e-mailuri, apoi faceți clic pe OK.

Apoi sunt create e-mailuri. Puteți vedea că semnătura implicită Outlook este adăugată la sfârșitul corpului de e-mail.

Sfat:

  • 1. Puteți schimba corpul e-mailului în codul VBA 1 în funcție de nevoile dvs.
  • 2. După rularea codului, dacă apare o fereastră de dialog care avertizează că tipul definit de utilizator nu este definit, închideți acest dialog, apoi accesați clic unelte > Referinte în Microsoft Visual Basic pentru aplicații fereastră. În deschidere Referințe - VBAProject fereastră, verificați Biblioteca de obiecte Microsoft Outlook caseta și faceți clic OK. Și apoi rulați din nou codul.

Introduceți cu ușurință semnătura Outlook atunci când trimiteți e-mailuri în Excel cu un instrument uimitor

Dacă sunteți un începător în VBA, aici vă recomandăm cu tărie Trimite emailuri utilitatea Kutools pentru Excel Pentru dumneavoastră. Cu această caracteristică, puteți trimite cu ușurință e-mailuri bazate pe anumite câmpuri din Excel și le puteți adăuga semnătură Outlook. Vă rugăm să faceți următoarele.

Înainte de a aplica Kutools pentru Excel, Vă rugăm să descărcați-l și instalați-l mai întâi.

În primul rând, trebuie să creați o listă de corespondență cu diferite câmpuri pe care să trimiteți e-mailuri.

Puteți crea manual o listă de corespondență după cum aveți nevoie sau puteți aplica funcția Creare listă de corespondență pentru a o face rapid.

1. clic Kutools Plus > Creați o listă de corespondență.

2. În Creați o listă de corespondență caseta de dialog, specificați câmpurile de care aveți nevoie, alegeți unde să scoateți lista, apoi faceți clic pe OK butonul.

3. Acum este creat un eșantion de listă de corespondență. Întrucât este o listă de eșantioane, trebuie să schimbați câmpurile pentru un anumit conținut necesar. (sunt permise mai multe rânduri)

4. După aceea, selectați întreaga listă (includeți anteturi), faceți clic pe Kutools Plus > Trimite emailuri.

5. În Trimite emailuri căsuță de dialog:

  • 5.1) Articolele din lista de corespondență selectată sunt plasate automat în câmpurile corespunzătoare;
  • 5.2) Finalizați corpul e-mailului;
  • 5.3) Verificați atât Trimiteți e-mail prin Outlook și Utilizați setările de semnătură Outlook cutii;
  • 5.4) Faceți clic pe Trimitere buton. Vedeți captura de ecran:

Acum sunt trimise e-mailuri. Și semnătura implicită Outlook este adăugată la sfârșitul corpului e-mailului.

  Dacă doriți să aveți o încercare gratuită (30-zi) a acestei utilitati, vă rugăm să faceți clic pentru a-l descărca, și apoi mergeți pentru a aplica operația conform pașilor de mai sus.


Legate de articole:

Trimiteți e-mail la adresele de e-mail specificate în celulele din Excel
Presupunând că aveți o listă de adrese de e-mail și doriți să trimiteți un mesaj de e-mail către aceste adrese de e-mail în bloc direct în Excel. Cum se realizează? Acest articol vă va arăta metodele de trimitere a e-mailurilor la mai multe adrese de e-mail specificate în celulele din Excel.

Trimiteți e-mail cu copierea și lipirea unui interval specificat în corpul e-mailului în Excel
În multe cazuri, o gamă specificată de conținut în foaia de lucru Excel poate fi utilă în comunicarea dvs. prin e-mail. În acest articol, vom introduce o metodă de trimitere a unui e-mail cu interval specificat lipit în corpul e-mailului direct în Excel.

Trimiteți e-mail cu mai multe atașamente atașate în Excel
Acest articol vorbește despre trimiterea unui e-mail prin Outlook cu mai multe atașamente atașate în Excel.

Trimiteți e-mail dacă data limită a fost respectată în Excel
De exemplu, dacă data scadenței din coloana C este mai mică sau egală cu 7 zile (data actuală este 2017/9/13), trimiteți un memento prin e-mail destinatarului specificat în coloana A cu conținutul specificat în coloana B. obtine asta? Acest articol va oferi o metodă VBA pentru a o trata în detalii.

Trimiteți automat e-mailuri pe baza valorii celulei din Excel
Presupunând că doriți să trimiteți un e-mail prin Outlook unui anumit destinatar pe baza unei valori de celulă specificate în Excel. De exemplu, când valoarea celulei D7 într-o foaie de lucru este mai mare de 200, atunci se creează automat un e-mail. Acest articol introduce o metodă VBA pentru a rezolva rapid această problemă.

Mai multe tutoriale pentru trimiterea prin poștă în Excel ...


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%

  • reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.
fila kte 201905

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
fundul officetab
Comentarii (28)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Mulțumesc frumos, îmi salvezi viața cu acest șablon :D
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dragă Favio,
Bucuros sa ajut.
Acest comentariu a fost redus la minimum de moderatorul de pe site
nu funcționează cu atașamente în Office 2016
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dragă Chris,
Codul VBA de mai jos vă poate ajuta. După rularea codului, vă rugăm să selectați celulele care conțin adrese de e-mail la care veți trimite e-mailuri, apoi selectați fișierele pe care trebuie să le atașați în e-mail ca atașamente când apare a doua casetă de dialog. Și semnătura implicită Outlook va fi afișată și în corpul e-mailului. Multumesc pentru comentariu.

Sub SendEmailToAddressInCells()
Dim xRg As Range
Dim xRgEach As Range
Dim xRgVal ca șir
Dim xAddress ca șir
Dim xOutApp ca Outlook.Aplicație
Dim xMailOut ca Outlook.MailItem
La data de eroare CV următoare
xAdresa = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox(„Vă rugăm să selectați intervalul de adrese de e-mail”, „KuTools pentru Excel”, xAddress, , , , , 8)
Dacă xRg nu este nimic, ieșiți din sub
Application.ScreenUpdating = Fals
Setați xOutApp = CreateObject("Outlook.Application")
Set xRg = xRg.SpecialCells(xlCellTypeConstants, xlTextValues)
Setați xFileDlg = Application.FileDialog(msoFileDialogFilePicker)
Dacă xFileDlg.Show = -1, atunci
Pentru fiecare xRgFiecare în xRg
xRgVal = xRgEach.Value
Dacă xRgVal Like „?*@?*.?*” Atunci
Setați xMailOut = xOutApp.CreateItem(olMailItem)
Cu xMailOut
.Afişa
.To = xRgVal
.Subiect = „Test”
.HTMLBody = „Acesta este un e-mail de test trimis în Excel” & „
" & .HTMLBody
Pentru fiecare xFileDlgItem din xFileDlg.SelectedItems
.Atașamente.Adăugați xFileDlgItem
Următorul xFileDlgItem
'.Trimite
Se termina cu
Final, dacă
Pagina Următoare →
Set xMailOut = Nimic
Setați xOutApp = Nimic
Application.ScreenUpdating = Adevărat
Final, dacă
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Încerc să adaug semnătura Outlook intitulată „implicit”, dar nu pare că funcționează.
poti te rog ajuta? Cred că logica mea „xMailout” este greșită. aceasta este zona mea suspectată defectuoasă.

Sub CommandButton privat 1_Click()

Dim xOutApp ca obiect
Dim xOutMail ca obiect
Dim xMailBody ca șir
Dim xMailOut ca Outlook.MailItem
La data de eroare CV următoare
Setați xOutApp = CreateObject("Outlook.Application")
Setați xOutMail = xOutApp.CreateItem(0)
xMailBody = „Salut:” & vbNewLine & vbNewLine & _
„Aceasta este linia 1” & vbNewLine & _
„Aceasta este linia 2” & vbNewLine & _
„Aceasta este linia 3” & vbNewLine & _
„Aceasta este linia 4”
La data de eroare CV următoare
Cu xOutMail
.To = „E-mail.here.com”
.CC = „Email.here.com”
.Subject = "Titlul e-mail aici - " & Interval ("Cell#").value
.Body = xMailBody
. Atașamente.Adăugați ActiveWorkbook.FullName
Setați xMailOut = xOutApp.CreateItem(olMailItem)
Cu xMailOut
.Afişa
Se termina cu
ActiveWorkbook.Salvare
La eroare GoTo 0
Setați xOutMail = Nimic
Setați xOutApp = Nimic
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună ziua,
Scriptul dvs. a fost modificat, vă rugăm să încercați. Mulțumesc.

Sub CommandButton privat 1_Click()
Dim xOutApp ca obiect
Dim xOutMail ca obiect
Dim xMailBody ca șir
Dim xMailOut ca Outlook.MailItem
La data de eroare CV următoare
Setați xOutApp = CreateObject("Outlook.Application")
Setați xOutMail = xOutApp.CreateItem(0)
xMailBody = „Salut:” & vbNewLine & vbNewLine & _
„Aceasta este linia 1” & vbNewLine & _
„Aceasta este linia 2” & vbNewLine & _
„Aceasta este linia 3” & vbNewLine & _
„Aceasta este linia 4”
La data de eroare CV următoare
Cu xOutMail
.To = „E-mail.here.com”
.CC = „Email.here.com”
.Subject = "Titlul e-mail aici - " & Interval ("Cell#").Value
.Body = xMailBody
.Atașamente.Adăugați ActiveWorkbook.FullName
Setați xMailOut = xOutApp.CreateItem(olMailItem)
Cu xMailOut
.Afişa
Se termina cu
Se termina cu
ActiveWorkbook.Salvare
La eroare GoTo 0
Setați xOutMail = Nimic
Setați xOutApp = Nimic
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
cum să adăugați semnătura dacă macro-ul este utilizat de mai mulți utilizatori.
de exemplu, macro-ul meu va fi rulat și de alte 3 persoane. Deci, cum poate macrocomanda să folosească semnătura utilizatorului care rulează macrocomanda.
Multumesc anticipat
Acest comentariu a fost redus la minimum de moderatorul de pe site
O zi buna,
Codul VBA poate recunoaște automat semnătura implicită în Outlook-ul expeditorului și poate trimite e-mail cu propria semnătură prin Outlook.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dacă textul meu de corp este legat la extrage din câmpurile Excel, utilizarea & .HTMLBody la sfârșitul șirului șterge tot textul și lasă doar semnătura.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Întâmpin probleme la rularea pe Excel 2016. Primesc un mesaj „Eroare de compilare: tip definit de utilizator nu este definit”. Te rog ajuta-ma!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Superb!!!!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Mulțumesc mult...
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, aș avea nevoie de ajutor cu macrocomanda mea, trebuie să introduc semnătura Outlook sub tabel, mă puteți ajuta cu asta?

Sub CommandButton privat 1_Click()


Perspectivă slabă ca obiect
Dim newEmail ca obiect
Dim xInspect ca obiect
Dim pageEditor ca obiect

Set Outlook = CreateObject("Outlook.Application")
Set newEmail = outlook.CreateItem(0)

Cu e-mail nou
.To = Sheet5.Range("F1")
.CC = ""
.BCC = ""
.Subiect = Sheet5.Range("B5")
.Body = Sheet5.Range("B41")
.afişa

Setați xInspect = newEmail.GetInspector
Setează pageEditor = xInspect.WordEditor

Sheet5.Range("B6:I7").Copy

pageEditor.Application.Selection.Start = Len(.Body)
pageEditor.Application.Selection.End = pageEditor.Application.Selection.Start
pageEditor.Application.Selection.PasteAndFormat (wdFormatPlainText)

.afişa
Set pageEditor = Nimic
Set xInspect = Nimic
Se termina cu

Set newEmail = Nimic
Set outlook = Nimic

End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Salut Bara,
Îmi pare rău că nu te pot ajuta cu asta. Multumesc pentru comentariul tau.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dragă,
Ma poate ajuta cineva cu VBA,
Am nevoie de semnătura din e-mailul creat:
Acest comentariu a fost redus la minimum de moderatorul de pe site
Datorită ție, pot adăuga semnătură acum, dar apoi elimină spațiile dintre paragraful textului. Poti sa ma ajuti te rog ?


Sub Helloworld()
Dim OutApp ca obiect
Dim OutMail ca obiect
Dim cell As Range
Dim Path As String
Cale = Application.ActiveWorkbook.Path
Set OutApp = CreateObject("Outlook.Application")

Pentru fiecare celulă din interval ("C4:C6")
Set OutMail = OutApp.CreateItem(0)
Cu OutMail
.Afişa
.To = cell.Value
.Subiect = Cells(cell.Row, "D").Value
.HTMLBody = „Dragă” & Celule(cell.Row, „B”).Value & "," _
& vbNewLine & vbNewLine & _
"Salutari calduroase" _
& vbNewLine & vbNewLine & _
„Noi, JK Overseas, am dori să profităm de o oportunitate și să prezentăm compania noastră JK Overseas, care este implicată în afacerile cu sare în ultimii 3 ani. În prezent suntem puternici în domeniul intern și în expansiune peste mări. Suntem furnizorul de sare comestibilă, Sare de dedurizare a apei, sare de dezghețare, sare industrială" și "." _
& vbNewLine & vbNewLine & _
„Avem o legătură cu producători mari din India și achiziționăm de la aceștia sare de calitate și exporturi. Prin urmare, căutăm un importator expert de încredere, precum și un agent distribuitor pentru a face o afacere pe termen lung, cu beneficii reciproce” & " ." _
& vbNewLine & vbNewLine & _
"Vă rugăm să ne contactați cu cerințele dvs. sau pentru orice alte întrebări pe care le aveți. Oferim logistică de încredere și livrare la timp. Suntem încrezători că prețurile noastre fiind cele mai competitive se vor potrivi așteptărilor dvs." & "." _
& vbNewLine & vbNewLine & _
.HTMLBody

'.Trimite
Se termina cu
Următoarea celulă
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Încerc să integrez acest cod în formatul actual pe care îl am în prezent, prin care pot să automatizez e-mailurile în Excel pe baza unui interval set de valori. Orice ajutor în ceea ce privește unde să adăugați codul „semnăturii” în ceea ce am în prezent ar fi foarte apreciat.

Public Sub CheckAndSendMail()

„Actualizat de Extendoffice 2018/11/22

Dim xRgDate ca interval

Dim xRgSend As Range

Dim xRgText ca interval

Dim xRgDone As Range

Dim xOutApp ca obiect

Dim xMailItem ca obiect

Dim xLastRow As Long

Dim vbCrLf ca șir

Dim xMailBody ca șir

Dim xRgDateVal ca șir

Dim xRgSendVal ca șir

Dim xMailSubject ca șir

Dim I As Long

La data de eroare CV următoare

„Vă rugăm să specificați intervalul de scadență

xStrRang = „D2:D110”

Setează xRgDate = Range(xStrRang)

„Vă rugăm să specificați intervalul de adrese de e-mail a destinatarilor

xStrRang = „C2:C110”

Set xRgSend = Range(xStrRang)

xStrRang = „A2:A110”

Setează xRgName = Range(xStrRang)

„Specificați intervalul cu conținut reamintit în e-mailul dvs

xStrRang = „Z2:Z110”

Set xRgText = Range(xStrRang)

xLastRow = xRgDate.Rows.Count

Setați xRgDate = xRgDate(1)

Setați xRgSend = xRgSend(1)

Setați xRgName = xRgName(1)

Setați xRgText = xRgText(1)

Setați xOutApp = CreateObject("Outlook.Application")

Pentru I = 1 To xLastRow

xRgDateVal = ""

xRgDateVal = xRgDate.Offset(I - 1).Valoare

Dacă xRgDateVal <> "" Atunci

Dacă CDate(xRgDateVal) - Data <= 30 și CDate(xRgDateVal) - Data > 0, atunci

xRgSendVal = xRgSend.Offset(I - 1).Valoare

xMailSubject = " Acordul de servicii JBC care expiră pe " & xRgDateVal

vbCrLf = "

"

xMailBody = ""

xMailBody = xMailBody & „Dragă” și xRgName.Offset(I - 1).Value & vbCrLf

xMailBody = xMailBody & " " & xRgText.Offset(I - 1).Value & vbCrLf

xMailBody = xMailBody & „”

Setați xMailItem = xOutApp.CreateItem(0)

Cu xMailItem

.Subject = xMailSubject

.To = xRgSendVal

.CC = „mailcc@justbettercare.com”

.HTMLBody = xMailBody

.Afişa

'.Trimite

Se termina cu

Set xMailItem = Nimic

Final, dacă

Final, dacă

Pagina Următoare →

Setați xOutApp = Nimic

End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Este un cod foarte util
Trebuie să schimb formatul textului de la dreapta la stânga în linia xOutMsg
ajutati-ma va rog .
Acest comentariu a fost redus la minimum de moderatorul de pe site
Încerc să trimit foi individuale din Excel către diferite e-mailuri, dar va atașa doar registrul de lucru în sine. De asemenea, trebuie să pot adăuga linia mea de semnătură în. Ajutor? Sub AST_Email_From_Excel()

Dim emailApplication ca obiect
Dim emailItem ca obiect

Set emailApplication = CreateObject("Outlook.Application")
Set emailItem = emailApplication.CreateItem(0)

Acum construim e-mailul.

emailItem.to = Range("e2").Value

emailItem.CC = Range("g2").Value

emailItem.Subject = „Echipament de tehnică nereturnat”

emailItem.Body = „Vezi foaia de calcul atașată pentru articolele nereturnate din zona ta”

„Atașați registrul de lucru curent
emailItem.Attachments.Add ActiveWorkbook.FullName

„Atașați orice fișier de pe computer.
„emailItem.Attachments.Add („C:\...)”

„Trimite e-mailul
„emailItem.send

„Afișați e-mailul, astfel încât utilizatorul să îl poată schimba după cum dorește înainte de a trimite
emailItem.Display

Set emailItem = Nimic
Set emailApplication = Nimic

End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Chris, Codul pe care l-ai furnizat a fost modificat. Semnătura Outlook poate fi acum inserată în corpul mesajului. Vă rugăm să încercați. Mulțumesc. Sub AST_Email_From_Excel()
„Actualizat de Extendoffice 20220211
Dim emailApplication ca obiect
Dim emailItem ca obiect
Set emailApplication = CreateObject("Outlook.Application")
Set emailItem = emailApplication.CreateItem(0)

Acum construim e-mailul.
emailItem.Display „Afișează e-mailul, astfel încât utilizatorul să îl poată schimba după cum dorește înainte de a trimite
emailItem.to = Range("e2").Value
emailItem.CC = Range("g2").Value
emailItem.Subject = „Echipament de tehnică nereturnat”
emailItem.HTMLBody = "Vezi foaia de calcul atașată pentru articolele nereturnate din zona ta" & " " & emailItem.HTMLBody

„Atașați registrul de lucru curent
emailItem.Attachments.Add ActiveWorkbook.FullName

Set emailItem = Nimic
Set emailApplication = Nimic

End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Crystal, Îți mulțumesc că l-ai făcut să adauge semnătura, însă nu pare să-i placă secțiunea HTMLBody. Când rulez macrocomandă, se depanează pe emailItem.HTMLBody = „Vezi foaia de calcul atașată pentru articolele nereturnate din zona ta” & " „ & emailItem.HTMLBodyand nu completează restul.  
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună,
Ce versiune de Excel folosești? Următorul cod VBA poate ajuta, de asemenea. Vă rugăm să încercați. Vă mulțumim pentru feedback-ul dumneavoastră. Sub SendWorkSheet()
'Actualizare până la Extendoffice 20220218
Dim xFile ca șir
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 ca registru de lucru
Dim FilePath ca șir
Dim FileName ca șir
Dim OutlookApp ca obiect
Dim OutlookMail ca obiect
La data de eroare CV următoare
Application.ScreenUpdating = Fals
Set Wb = Application.ActiveWorkbook
ActiveSheet.Copy
Setați Wb2 = Application.ActiveWorkbook
Selectați Case Wb.FileFormat
Caz xlOpenXMLWorkbook:
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
Caz xlOpenXMLWorkbookMacroEnabled:
Dacă Wb2.HasVBProject Atunci
xFile = ".xlsm"
xFormat = xlOpenXMLWorkbookMacroEnabled
Altfel
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
Final, dacă
Cazul Excel8:
xFile = ".xls"
xFormat = Excel8
Cazul xlExcel12:
xFile = ".xlsb"
xFormat = xlExcel12
Selectare sfârșit
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format (Acum, „zz-mmm-aa h-mm-ss”)
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
'xstr = Interval("e2") & " ; " & Interval ("g2")
Cu OutlookMail
.Afişa
.To = Range("e2")
.CC = Interval(„g2”)
.BCC = ""
.Subject = „Echipament de tehnică nereturnat”
.HTMLBody = "Vezi foaia de calcul atașată pentru articolele nereturnate din zona ta" & " " & .HTMLBody
.Atașamente.Add Wb2.FullName
'.Trimite
Se termina cu
Wb2.Închidere
Omorâți FilePath și FileName și xFile
Setați OutlookMail = Nimic
Setați OutlookApp = Nimic
Application.ScreenUpdating = Adevărat
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Pare să fie Excel 2016 și VBA 7.1
Acest comentariu a fost redus la minimum de moderatorul de pe site
Oi Cristal, a minha macro perde o configurație de asinatura de e-mail, cu imagini și formatare original. Como consigo resolver?

Sub Geraremail()

Dim OLapp ca Outlook.Aplicație
Dim janela ca Outlook.MailItem

Setați OLapp = Noua aplicație Outlook
Set janela = OLapp.CreateItem(olMailItem)

Arquivo01 = „Mapa AN”
Anexo01 = ThisWorkbook.Path & „\” & Arquivo01 & „.xlsm”


Cu janela
ActiveWorkbook.Salvare
.Afişa
.To = Sheets("Base").Range("A2").Value
.CC = Sheets("Base").Range("A5").Value
.Subject = "Mapa - Acrilo " & Format(Data, "zz.ll.aa")
assinatura = .Body
.Body = "Prezados/as," & Chr(10) & Chr(10) & "Segue anexo o mapa de Acrilonitrila considerando as vendas previstas no S&OP." & Chr(10) & Chr(10) & assinatura
.Atașamente.Adăugați Anexo01
Se termina cu

End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Com a mudança abaixo, consegui ajustar. Porem a letter do corpo da mensagem fica în Times New Roman. Gostaria de usar Calibri, como posso alterar o código?

Sub Geraremail()

Dim OLapp ca Outlook.Aplicație
Dim janela ca Outlook.MailItem

Setați OLapp = Noua aplicație Outlook
Set janela = OLapp.CreateItem(olMailItem)

Arquivo01 = „Mapa AN”
Anexo01 = ThisWorkbook.Path & „\” & Arquivo01 & „.xlsm”


Cu janela
ActiveWorkbook.Salvare
.Afişa
.To = Sheets("Base").Range("A2").Value
.CC = Sheets("Base").Range("A5").Value
.Subject = "Mapa - Acrilo " & Format(Data, "zz.ll.aa")
assinatura = .Body
.HTMLBody = "Prezados/as," & Chr(10) & Chr(10) & "Segue anexo o mapa de Acrilonitrila considerando as vendas previstas no S&OP." & " " & .HTMLBody
.Atașamente.Adăugați Anexo01
Se termina cu

End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Buna Milla,
Următorul cod VBA vă poate ajuta să schimbați fontul corpului e-mailului în Calibri, vă rugăm să încercați. Mulțumesc.
Înainte de a rula codul, trebuie să faceți clic unelte > Referinţă în Microsoft Visual Basic pentru aplicații fereastra, apoi verificați Biblioteca de obiecte Microsoft Word caseta de selectare din Referințe - VBAProject caseta de dialog ca în captura de ecran prezentată mai jos.
[img]I:\工作\周雪明\2022年工作\6月份\文章评论截图\3.png[/img]
Sub Geraremail()
Dim OLapp As Outlook.Application
Dim janela As Outlook.MailItem
Dim xDoc As Document 'Click Tools > Reference to enable the Microsoft Word Object Library
On Error Resume Next
Set OLapp = New Outlook.Application
Set janela = OLapp.CreateItem(olMailItem)
Arquivo01 = "Mapa AN"
Anexo01 = ThisWorkbook.Path & "\" & Arquivo01 & ".xlsm"
With janela
  ActiveWorkbook.Save
  .Display
  .To = Sheets("Base").Range("A2").Value
  .CC = Sheets("Base").Range("A5").Value
  .Subject = "Mapa - Acrilo " & Format(Date, "dd.mm.yy")
   assinatura = .Body
  .HTMLBody = "Prezados/as," & Chr(10) & Chr(10) & "Segue anexo o mapa de Acrilonitrila considerando as vendas previstas no S&OP." & "<br>" & .HTMLBody
  .Attachments.Add Anexo01
End With
Set xDoc = janela.GetInspector.WordEditor
xDoc.Content.Font.Name = "Calibri"
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Buna Milla,
Următorul cod VBA vă poate ajuta să schimbați fontul corpului e-mailului în Calibri, vă rugăm să încercați. Mulțumesc.
Înainte de a rula codul, trebuie să faceți clic unelte > Referinţă în Microsoft Visual Basic pentru aplicații fereastra, apoi verificați Biblioteca de obiecte Microsoft Word caseta de selectare din Referințe - VBAProject caseta de dialog ca fișierul atașat prezentat mai jos.
Sub Geraremail()
Dim OLapp As Outlook.Application
Dim janela As Outlook.MailItem
Dim xDoc As Document 'Click Tools > Reference to enable the Microsoft Word Object Library
On Error Resume Next
Set OLapp = New Outlook.Application
Set janela = OLapp.CreateItem(olMailItem)
Arquivo01 = "Mapa AN"
Anexo01 = ThisWorkbook.Path & "\" & Arquivo01 & ".xlsm"
With janela
  ActiveWorkbook.Save
  .Display
  .To = Sheets("Base").Range("A2").Value
  .CC = Sheets("Base").Range("A5").Value
  .Subject = "Mapa - Acrilo " & Format(Date, "dd.mm.yy")
   assinatura = .Body
  .HTMLBody = "Prezados/as," & Chr(10) & Chr(10) & "Segue anexo o mapa de Acrilonitrila considerando as vendas previstas no S&OP." & "<br>" & .HTMLBody
  .Attachments.Add Anexo01
End With
Set xDoc = janela.GetInspector.WordEditor
xDoc.Content.Font.Name = "Calibri"
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Hello, I am trying to fix my VBA Code. I would like to include one of my outlook signatures with a logo. Is this possible, and where do I put the code that I am currently using? Any assistance would be great.

Sub EmailAspdf()

Dim EApp As Object
Set EApp = CreateObject("Outlook.Application")

Dim EItem As Object
Set EItem = EApp.CreateItem(0)

Dim invno As Long
Dim custname As String
Dim amt As Currency
Dim dt_issue As Date
Dim term As Byte
Dim nextrec As Range
Dim calea ca șir
Dim fname As String

invno = Range("I4")
custname = Range("A11")
amt = Range("I42")
dt_issue = Range("I6")
term = Range("I7")
path = "mypath"
fname = invno & " - " & custname

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, IgnorePrintAreas:=False, Filename:=path & fname

Set nextrec = Sheet3.Range("A1048576").End(xlUp).Offset(1, 0)

nextrec = invno
nextrec.Offset(0, 1) = custname
nextrec.Offset(0, 2) = amt
nextrec.Offset(0, 3) = dt_issue
nextrec.Offset(0, 4) = dt_issue + term
nextrec.Offset(0, 8) = Now

Sheet3.Hyperlinks.Add anchor:=nextrec.Offset(0, 6), Address:=path & fname & ".pdf"

With EItem

.To = Range("A17")

.Subject = Range("A11") & " " & "Invoice No: " & Range("I4") & " " & "for California Advocates"

.body = "Hello " & Range("A11") & "," & vbNewLine & vbNewLine _
& "Please see the attached invoice for " & Range("A11") & "." & vbNewLine & vbNewLine _
& "If you have any questions, please do not hesitate to contact me." & vbNewLine & vbNewLine _
& "Best," & vbNewLine _
& "Mynamehere" & vbNewLine

.Attachments.Add (path & fname & ".pdf")

.Afişa

Se termina cu
Ieșiți din Sub



End Sub
Nu există comentarii postate aici încă
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL