Skip i'r prif gynnwys

Tiwtorial Excel - Anfon e-byst o Excel

Fel arfer, rydym yn defnyddio cleientiaid e-bost fel Outlook, Gmail, ac ati i anfon e-byst. Ond, mae llawer o bobl yn storio data mewn llyfrau gwaith Excel ac mae angen iddynt anfon rhywfaint o ddata at eraill tra byddant yn gweithio gydag ef. Felly, mae angen iddynt anfon e-byst yn uniongyrchol o lyfr gwaith Excel, sy'n arbed amser gweithredu cleient e-bost. Bydd y tiwtorial cam wrth gam hwn yn dangos i chi sut i anfon e-byst o Excel o dan amodau gwahanol.

Nodyn: Cyn cymhwyso'r dulliau canlynol, mae angen i chi ffurfweddu cleient e-bost Outlook yn eich cyfrifiadur a'i osod fel eich cleient e-bost diofyn.

Tabl Cynnwys: [ Cuddio ]

(Cliciwch ar unrhyw bennawd yn y tabl cynnwys isod neu ar y dde i lywio i’r bennod gyfatebol.)

1. Hanfodion anfon e-byst o Excel

Mae'r adran hon yn cyflwyno hanfodion anfon e-byst o Excel.

1.1 Anfon e-byst o Excel gyda swyddogaethau adeiledig Excel

Os ydych chi am anfon e-byst syml yn unig o Excel, gan gynnwys dim ond y meysydd I, Pwnc, Cc a chorff. Gall y swyddogaethau adeiledig yn Excel helpu.


1.1.1 Anfon e-bost oddi wrth Excel gyda fformiwla

Fel y dangosir yn y tabl isod, i anfon gwahanol negeseuon e-bost o Excel yn seiliedig ar y meysydd a roddir, gallwch ddefnyddio cyfeiriadau cell y meysydd a roddir i greu gwahanol fformiwlâu Hyperlink i'w wneud. Ar ôl creu'r hypergysylltiadau e-bost, gallwch glicio ar yr hyperddolen sydd ei angen arnoch i anfon e-bost yn awtomatig.

Nodyn: Os oes mwy nag un derbynnydd yn y meysydd To neu Cc, gwahanwch nhw gyda hanner colon.

Mae'r adran hon wedi'i rhannu'n bedair rhan i ddangos i chi'r camau i ychwanegu cyfeiriad e-bost, derbynnydd (derbynwyr Cc), llinell pwnc, a chorff testun ar wahân i'r fformiwla Hyperlink. Gwnewch fel a ganlyn.

Cystrawen a dadleuon y HYPERLINK swyddogaeth fel a ganlyn.

Cystrawen

HYPERLINK(link_location, [friendly_name])

Dadleuon

Dolen_lleoliad (gofynnol): Y llwybr ac enw ffeil y ddogfen i'w hagor;
Awgrymiadau: Yn y tiwtorial hwn, dylid rhoi'r holl feysydd sydd eu hangen arnom ar gyfer e-bost, megis cyfeiriad e-bost y derbynnydd, y derbynnydd Cc, y llinell bwnc a'r corff testun, yn y ddadl gyntaf "link_location".
Enw_cyfeillgar (dewisol): Y gwerth naid sy'n cael ei arddangos yn y gell.

1.1.1.1 Ychwanegu cyfeiriad e-bost at fformiwla Hyperlink

Yma rydyn ni'n defnyddio " mailto:" fel rhan o'r fformiwla i ychwanegu derbynnydd e-bost. Yn yr enghraifft hon, mae cyfeiriad e-bost y derbynnydd cyntaf yng nghell B2, felly mae angen i ni ychwanegu "mailto:" a'i gyfeirio at gell B2.

"mailto:"&B2

1. Dewiswch gell i arddangos yr hyperddolen. Yn yr achos hwn, rwy'n dewis y gell F2.

2. Yna rhowch y fformiwla ganlynol i mewn iddo.

=HYPERLINK("mailto:"&B2)

Nodyn: Os gwasgwch y Rhowch allweddol, bydd hyperddolen yn cael ei greu fel y dangosir yn y screenshot isod. Pan fyddwch yn clicio ar y ddolen, bydd e-bost Outlook yn cael ei greu a bydd cyfeiriad e-bost y derbynnydd yn cael ei boblogi yn y maes To yn awtomatig.

Mae cyfeiriad e-bost y derbynnydd bellach yn cael ei ychwanegu at y fformiwla Hyperlink. Parhewch â'r camau canlynol i ychwanegu'r llinell bwnc, derbynnydd Cc, a chorff testun yn ôl yr angen.


1.1.1.2 Ychwanegu derbynnydd(wyr) Cc at fformiwla Hyperlink

I ychwanegu'r derbynnydd(wyr) Cc at y swyddogaeth Hyperlink, ychwanegwch "?cc=" fel rhan o'r fformiwla fel a ganlyn.

" ?cc = " &C2
lle mae C2 yn cynnwys cyfeiriad e-bost y derbynnydd cc.

Dylai'r fformiwla yng nghell F2 fod fel a ganlyn:

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


1.1.1.3 Ychwanegu llinell pwnc i fformiwla Hyperlink

I ychwanegu'r llinell bwnc i'r swyddogaeth Hyperlink, ychwanegwch "& subject=" fel rhan o'r fformiwla fel a ganlyn.

"&subject="&D2
lle mae C2 yn cynnwys testun yr e-bost.

Dylai'r fformiwla yng nghell F2 nawr edrych fel y canlynol:

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


1.1.1.4 Ychwanegu testun corff gyda thoriadau llinell i fformiwla Hyperlink

Y cam olaf yw ychwanegu testun y corff i'r fformiwla Hyperlink. Fel y gwelwch yn yr enghraifft, mae dwy linell o destun yn E2 yn cael eu gwahanu gan doriad llinell, ac rydych chi am gadw'r toriad llinell yn y corff e-bost. A yw Outlook yn cydnabod y toriad llinell yn yr amgylchiad hwn? Gadewch i ni wirio amdano.

I ychwanegu testun y corff i'r fformiwla Hyperlink, mae angen i chi ychwanegu “&corff=” fel rhan o'r fformiwla fel a ganlyn.

"&body="& E2
lle mae E2 yn cynnwys testun corff yr e-bost.

Mae'r fformiwla yng nghell F2 bellach wedi'i harddangos fel a ganlyn:

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

Nodyn: Os gwasgwch y Rhowch allwedd a chliciwch ar y ddolen. Gallwch weld yn yr e-bost newydd bod y cynnwys yn y corff e-bost yn cael ei arddangos yn yr un llinell.

I arddangos y corff e-bost mewn llinellau ar wahân, mae angen i chi addasu cynnwys y gell trwy ychwanegu cod nod dychwelyd y cerbyd %0A i'r testun lle mae angen i chi fewnosod toriad llinell. Gweler y sgrinlun:


1.1.1.5 Nodwch y testun i'w ddangos ar gyfer yr hyperddolen

Yn y camau uchod, rydym wedi gorffen y ddadl Link_location gyda meysydd e-bost. Yma yn yr adran hon, rydyn ni'n mynd i orffen y ddadl nesaf [friendly_name].

Yn yr achos hwn, rwyf am i'r gell hyperddolen arddangos y testun fel "E-bostiwch at xx”, lle xx yw enw'r derbynnydd yn A2. Felly, dylid newid y fformiwla yn F2 i:

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

Gwasgwch y Rhowch allwedd i gael y canlyniad.

Dewiswch y gell fformiwla hon a llusgwch ei Trin AutoFill lawr i greu hypergysylltiadau e-bost eraill. Gweler y sgrinlun:


1.1.2 Anfon e-bost oddi wrth Excel gyda'r swyddogaeth Hyperlink

Ac eithrio defnyddio'r fformiwla Hyperlink uchod, gallwch chi greu hyperddolen e-bost â llaw gyda'r Mewnosod hyperlink swyddogaeth yn Excel. Mae'r adran hon yn mynd i ddangos y camau i chi.

1. De-gliciwch e-bost lle rydych chi am fewnosod hyperddolen, dewiswch Cyswllt o'r ddewislen clicio ar y dde.

2. Yn y popping up Mewnosod Hyperlink blwch deialog, mae angen i chi ffurfweddu fel a ganlyn.

2.1) Dewis Cyfeiriad E-bost yn y bocs chwith.
2.2) Yn y Testun i'w arddangos blwch testun, teipiwch y testun rydych chi am ei ddangos yn y gell;
Awgrymiadau: Ni allwch ddefnyddio cyfeiriadau cell yn y blwch deialog hwn, felly dylech deipio'r meysydd e-bost â llaw fel a ganlyn.
2.3) Yn y E-bost blwch testun, mae angen i chi deipio'r cyfeiriadau e-bost canlynol.
mailto: cyfeiriad e-bost
Disodlwch y testun “cyfeiriad e-bost” gyda'ch cyfeiriad e-bost go iawn. Os oes gennych fwy nag un cyfeiriad e-bost, gwahanwch nhw fesul hanner colon.
2.4) Yn y Pwnc textbox, gallwch nodi eich pwnc e-bost a chorff e-bost yma. Ffurfweddwch fel a ganlyn:
E-bost subject&body=Corff e-bost
Yn yr achos hwn, rwy'n teipio i mewn Gwerthiant misol&body=Helo, derbyniwyd %0AEmail.
> lle mae'r pwnc yn werthiant Misol;
ac
> y corff e-bost yw:
Heia,
Derbyniwyd e-bost. (%0A yw'r cod nodau dychwelyd cerbyd y gall Outlook ei adnabod)
2.5) Cliciwch y OK botwm i arbed yr hyperddolen. Gweler y sgrinlun:

Pan gliciwch ar yr hyperddolen, bydd e-bost Outlook yn cael ei greu gyda'r meysydd I, Pwnc a Chorff penodedig fel y dangosir yn y sgrin isod.

Nodiadau:

1) Gyda'r dull hwn, roedd yn rhaid i chi greu hyperddolenni e-bost pob un â llaw.
2) Ni allwch ychwanegu'r maes Cc at e-byst gyda'r dull hwn. Felly, os oes angen y maes Cc arnoch chi, ychwanegwch ef o'r ffenestr e-bost agoriadol newydd.

1.2 Anfon e-bost at dderbynwyr lluosog mewn celloedd gyda sgript VBA

Yn yr enghraifft uchod, gallwch weld cyfeiriadau e-bost lluosog yn cael eu harddangos mewn cell, wedi'u gwahanu gan hanner colon. Os oes gennych restr o gyfeiriadau e-bost fel y dangosir yn y sgrin isod ac eisiau anfon e-bost neu e-bost annibynnol at bob un ohonynt, gall y cod VBA canlynol wneud ffafr i chi.


1.2.1 Anfon e-bost at dderbynwyr lluosog mewn celloedd gyda sgript VBA

1. Yn y daflen waith sy'n cynnwys yr holl gyfeiriadau e-bost yr ydych am anfon yr e-bost atynt. Gwasgwch y Alt + F11 allweddi i agor y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.

2. Yn y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch Mewnosod > Modiwl, ac yna gludwch y cod canlynol i mewn i'r Modiwl (Cod) ffenestr.

Cod VBA: Anfonwch e-bost at restr o gyfeiriadau e-bost

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. Gwasgwch y F5 allwedd i redeg y cod a Kutools ar gyfer Excel blwch deialog pops up. Dewiswch y rhestr o gyfeiriadau e-bost a chliciwch OK.

Nodiadau:

1) Os nad ydych chi am i'r blwch deialog uchod ymddangos ac eisiau nodi'r ystod o gyfeiriadau e-bost yn y cod yn uniongyrchol, disodlwch y llinell hon:
Gosod xRg = Application.InputBox ("Dewiswch y rhestr cyfeiriadau:"", "Kutools ar gyfer Excel", xTxt, , , , , , 8)
gyda
Gosod xRg = Ystod ("A2: A7")
2) Gallwch chi nodi eich pwnc a'ch corff e-bost eich hun yn y llinellau canlynol:
.Subject = "Prawf"
.Body = "Dear " _
        & vbNewLine & vbNewLine & _
        "This is a test email " & _
        "sending in Excel"
3) I anfon yr e-bost yn uniongyrchol heb agor y ffenestr neges newydd ganlynol, mae angen i chi ddisodli'r llinell hon:
.Arddangos
gyda
.Anfon

Ar ôl rhedeg y cod, mae'r holl gyfeiriadau e-bost yn yr ystod a ddewiswyd yn cael eu harddangos ym maes To y ffenestr neges. Gweler y sgrinlun:


1.2.2 Anfon e-byst ar wahân at bob derbynnydd a restrir mewn celloedd gyda sgript VBA

Mae'r cod uchod yn ychwanegu pob cyfeiriad e-bost yn yr ystod a ddewiswyd i faes To y ffenestr neges. Os ydych chi am anfon e-byst i bob cyfeiriad e-bost a restrir mewn celloedd ar wahân heb adael iddynt weld cyfeiriadau e-bost ei gilydd, gallwch roi cynnig ar y sgript VBA followings.

1. Yn y daflen waith sy'n cynnwys yr holl gyfeiriadau e-bost yr ydych am anfon y negeseuon e-bost atynt. Gwasgwch y Alt + F11 allweddi i agorwch ffenestr Microsoft Visual Basic for Applications.

2. Yn y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch Mewnosod > Modiwlau, ac yna gludwch y cod canlynol i ffenestr y Modiwl (Cod).

Cod VBA: Anfonwch e-byst i bob cyfeiriad e-bost a restrir mewn celloedd ar wahân

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. Yna cliciwch offer > Cyfeiriadau. Yn y Cyfeiriadau - VBAProject blwch deialog, darganfyddwch a gwiriwch y Llyfrgell Gwrthrychau Microsoft Outlook 16.0 blwch ac yna cliciwch ar OK botwm i achub y newidiadau.

4. Gwasgwch y F5 allwedd i redeg y cod a Kutools ar gyfer Excel blwch deialog pops up. Dewiswch y rhestr o gyfeiriadau e-bost a chliciwch OK.

Nodiadau:

1) Os nad ydych chi am i'r blwch deialog uchod ymddangos ac eisiau nodi'r ystod o gyfeiriadau e-bost yn y cod yn uniongyrchol, disodlwch y llinell hon:
Gosod xRg = Application.InputBox ("Dewiswch y rhestr cyfeiriadau:"", "Kutools ar gyfer Excel", xTxt, , , , , , 8)
gyda
Gosod xRg = Ystod ("A2: A7")
2) Gallwch chi nodi eich pwnc a'ch corff e-bost eich hun yn y llinellau canlynol:
.Subject = "Test"
.Body = "Dear " _
        & vbNewLine & vbNewLine & _
        "This is a test email " & _
        "sending in Excel"
3) I anfon yr e-bost yn uniongyrchol heb agor y ffenestri neges canlynol, mae angen i chi ddisodli'r llinell hon:
.Arddangos
gyda
.Anfon

Yn yr enghraifft hon, mae chwe chyfeiriad e-bost yn yr ystod a ddewiswyd, felly bydd chwe ffenestr neges Outlook yn cael eu creu yn awtomatig gyda chyfeiriad e-bost ar wahân a restrir yn y maes To fel y dangosir yn y screenshot isod.

5. O'r diwedd, cliciwch anfon botwm i anfon yr e-bost fesul un.


2. Mewnosod atodiadau neu lofnod Outlook yn y negeseuon e-bost a anfonwyd o Excel (gyda sgriptiau VBA)

Mae'r adran hon yn mynd i ddangos i chi sut i fewnosod atodiadau neu lofnod rhagosodedig Outlook yn y negeseuon e-bost a anfonwyd o Excel.

2.1 Mewnosod atodiadau yn y negeseuon e-bost a anfonwyd gan Excel

Yma rydym yn disgrifio'r gwahanol achosion o fewnosod atodiadau, a gallwch ddewis y dull yn ôl eich anghenion. Yn yr adran hon, gallwch ddysgu sut (cliciwch ar unrhyw un o'r ddolen ganlynol i lywio i'r dull cyfatebol):


2.1.1 E-bostiwch ffeil arbennig fel atodiad

Gallwch gymhwyso'r cod VBA canlynol i e-bostio un neu fwy o ffeiliau mewn ffolder fel atodiadau o Excel.

1. Gwasgwch y Alt + F11 allweddi.

2. Yn yr agoriad Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch Mewnosod > Modiwlau. Yna gludwch y cod VBA canlynol i ffenestr y Modiwl (Cod).

Cod VBA: Ffeiliau e-bost mewn ffolder fel atodiadau o 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

Nodiadau:

1) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost eich derbynnydd eich hun;
2) Newid y pwnc e-bost a'r corff e-bost ar wahân yn y llinell .Subject = "prawf" ac .HTMLBody = "prawf";
3) Gallwch ychwanegu derbynwyr Cc a Bcc yn ôl yr angen. Ychwanegwch y ddwy linell ganlynol o dan y llinell.I = .
.CC = "cyfeiriad e-bost"
.BCC = "cyfeiriad e-bost"

3. Yna cliciwch offer > Cyfeiriadau. Yn y Cyfeiriadau - VBAProject blwch deialog, darganfyddwch a gwiriwch y Llyfrgell Gwrthrychau Microsoft Outlook 16.0 blwch ac yna cliciwch ar OK botwm i achub y newidiadau.

4. Gwasgwch y F5 allwedd i redeg y cod, yna a Pori ffenestr yn ymddangos, dewiswch y ffeiliau y mae angen i chi eu hatodi yn yr e-bost, ac yna cliciwch OK.

Yna mae ffenestr neges yn ymddangos. Gallwch weld y ffeiliau a ddewiswyd yn cael eu harddangos fel atodiadau yn y maes Atodi.


2.1.2 E-bostiwch y daflen waith gyfredol fel atodiad

Os ydych chi am e-bostio'r daflen waith gyfredol fel atodiad gan Excel, gallwch chi gymhwyso'r sgript VBA yn yr adran hon.

1. Gwasgwch y Alt + F11 allweddi.

2. Yn yr agoriad Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch mewnosod > Modiwlau. Yna gludwch y cod VBA canlynol i mewn i'r Modiwl (Cod) ffenestr.

Cod VBA: E-bostiwch y daflen waith gyfredol fel atodiad

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

Nodiadau:

1) Yn y llinell.I = , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
2) Newid y pwnc e-bost a'r corff e-bost ar wahân yn y llinell .Subject = "nodweddion kte" ac .Body = " Gwiriwch a darllenwch y ddogfen hon.";
3) Yn y ddwy linell ganlynol:
.CC = "cyfeiriad e-bost"
.BCC = "cyfeiriad e-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.

3. Gwasgwch y F5 allweddol i redeg y cod, yna caiff y daflen waith gyfredol ei gadw fel llyfr gwaith Excel a'i fewnosod yn awtomatig mewn ffenestr neges fel atodiad. Gweler y sgrinlun:

Nodyn: Mae gan y llyfr gwaith atodedig sy'n cynnwys y daflen waith gyfredol yn unig yr un enw â'r llyfr gwaith gwreiddiol. Ac mae'r amser rydych chi'n rhedeg y cod yn cael ei ychwanegu at enw'r llyfr gwaith hefyd.


2.1.3 E-bostiwch y llyfr gwaith cyfredol fel atodiad

Ar ôl dysgu'r cod VBA i e-bostio'r daflen waith gyfredol fel atodiad gan Excel, yma rydym yn darparu sgript VBA arall i'ch helpu i e-bostio'r llyfr gwaith cyfan fel atodiad. Gwnewch fel a ganlyn.

1. Gwasgwch y Alt + F11 allweddi.

2. Yn yr agoriad Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch Mewnosod > Modiwl. Yna gludwch y cod VBA canlynol i ffenestr y Modiwl (Cod).

Cod VBA: E-bostiwch y llyfr gwaith cyfredol fel atodiad gan 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

Nodiadau:

1) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
2) Newid y pwnc e-bost a'r corff e-bost ar wahân yn y llinell .Subject = "nodweddion kte" ac .Body = " Gwiriwch a darllenwch y ddogfen hon.";
3) Yn y ddwy linell ganlynol:
.CC = "cyfeiriad e-bost"
.BCC = "cyfeiriad e-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.

3. Gwasgwch y F5 allweddol i redeg y cod, yna mae'r llyfr gwaith cyfredol yn cael ei fewnosod i ffenestr neges fel atodiad yn awtomatig. Gweler y sgrinlun:


2.1.4 E-bostiwch y llyfr gwaith cyfan fel atodiad PDF

I'r rhan fwyaf o bobl, maent yn tueddu i arbed llyfr gwaith Excel fel ffeil PDF ac yna ei anfon fel atodiad i eraill. Yn yr adran hon, byddaf yn dangos ffordd i chi anfon e-byst yn uniongyrchol o Excel gyda'r llyfr gwaith agored cyfredol fel atodiad PDF heb orfod cadw'r llyfr gwaith â llaw fel ffeil PDF.

1. Gwasgwch y Alt + F11 allweddi.

2. Yn yr agoriad Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch Mewnosod > Modiwl. Yna gludwch y cod VBA canlynol i ffenestr y Modiwl (Cod).

Cod VBA: E-bostiwch y llyfr gwaith cyfan fel atodiad 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

Nodiadau:

1) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
2) Newid y pwnc e-bost a'r corff e-bost ar wahân yn y llinell .Subject = "prawf" ac .Body = "prawf";
3) Yn y ddwy linell ganlynol:
.CC = "Cyfeiriad E-bost"
.BCC = "Cyfeiriad E-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “Cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.
4) Bydd enw'r ffeil PDF yr un fath ag enw'r llyfr gwaith gwreiddiol. A bydd yr amser y byddwch chi'n rhedeg y cod hefyd yn cael ei ychwanegu at enw'r llyfr gwaith hefyd. Os nad oes angen i chi ychwanegu'r stamp amser at enw'r ffeil, tynnwch & Fformat(Nawr, "dd-mmm-bb h-mm-ss") o'r llinell ganlynol.
FileName = Chwith(Wb.Name, (InStrRev(Wb.Name, ".", -1, vbTextCompare) - 1)) & Fformat(Nawr, "dd-mmm-yy h-mm-ss") & ".pdf "

3. Gwasgwch y F5 allwedd i redeg y cod. Yna caiff y llyfr gwaith cyfredol ei fewnosod yn awtomatig mewn ffenestr neges newydd fel atodiad ffeil PDF. Gweler y sgrinlun:


2.1.5 E-bostiwch y daflen waith gyfredol fel atodiad PDF

Er enghraifft, mae yna lyfr gwaith o'r enw “Gwerthiant misol”, ac rydych chi wedi gorffen tabl adroddiad gwerthu mewn taflen waith o'r enw “adroddiad gwerthu” ac eisiau anfon y daflen waith hon fel ffeil PDF at eich cydweithwyr. Gall y cod VBA canlynol wneud ffafr i chi.

1. Gwasgwch y Alt + F11 allweddi.

2. Yn yr agoriad Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch mewnosod > Modiwl. Yna gludwch y cod VBA canlynol i ffenestr y Modiwl (Cod).

Cod VBA: E-bostiwch y daflen waith gyfredol fel atodiad 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

Nodiadau:

1) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
2) Newid y pwnc e-bost a'r corff e-bost ar wahân yn y llinell .Subject = "prawf" ac .Body = "prawf";
3) Yn y ddwy linell ganlynol:
.CC = "Cyfeiriad E-bost"
.BCC = "Cyfeiriad E-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “Cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.
4) Enw'r ffeil PDF fydd: enw'r llyfr gwaith gwreiddiol_enw'r daflen waith wreiddiol. Yn yr achos hwn, enw'r PDF fydd adroddiad gwerthiant_sales misol.

3. Gwasgwch y F5 allwedd i redeg y cod. Yna caiff y daflen waith gyfredol ei mewnosod yn awtomatig mewn ffenestr neges newydd fel atodiad ffeil PDF. Gweler y sgrinlun:


2.2 Mewnosod llofnod Outlook yn y negeseuon e-bost a anfonwyd o Excel

Cymerwch yr achos uchod fel enghraifft, rydych chi'n cymhwyso'r cod VBA uchod i anfon y daflen waith gyfredol fel atodiad ffeil PDF o Excel, ond ni ellir ychwanegu llofnod Outlook i'r ffenestr neges. I gadw llofnod rhagosodedig Outlook yn yr e-bost a anfonwyd gan Excel, bydd y dull canlynol yn helpu.

Rhestrir dau god VBA isod.

Cod VBA 1: Mae'r cod yn helpu i gadw llofnod Outlook.

Cod VBA 2: Mae'r cod yn helpu i e-bostio'r daflen waith gyfredol fel atodiad PDF.

Cod VBA 1: Cadw llofnod Outlook

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

Cod VBA 2: E-bostiwch y daflen waith gyfredol fel atodiad 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. Fel arfer, mae angen i chi wasgu'r Alt + F11 allweddi i agor y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.

2. Yn y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch Mewnosod > Modiwlau. Yna gludwch y cod VBA 2 uchod yn ffenestr y Modiwl (Cod).

3. Er mwyn cadw llofnod rhagosodedig Outlook yn yr e-bost a anfonwyd o Excel, mae angen i chi addasu'r cod VBA 2 fel a ganlyn:

1) Amnewid y .Corff llinell gyda Cod VBA 1;
2) Symudwch y llinell .Arddangos dan y llinell Gyda OutlookMail (neu Gyda xMailOut mewn codau eraill). Gweler y screenshot:

Dyma'r cod cyflawn ar ôl ei addasu.

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. Gwasgwch y F5 allwedd i redeg y cod. Yna fe gewch ffenestr neges newydd gyda'r daflen waith gyfredol ynghlwm fel ffeil PDF, tra bydd llofnod rhagosodedig Outlook yn cael ei fewnosod ar ddiwedd y corff e-bost yn awtomatig.


3. Anfon e-byst o Excel yn awtomatig pan fodlonir amod (gyda sgriptiau VBA)

Yn yr enghreifftiau uchod, mae angen i chi redeg y cod â llaw i gyflawni'r dosbarthiad e-bost. Os ydych chi am sbarduno'r cod yn awtomatig pan fodlonir amod penodol, megis pan fydd cell yn cyrraedd gwerth penodol, pan fydd gwerth cell yn newid, pan gyrhaeddir dyddiad, ac ati, anfonir yr e-bost yn awtomatig. Mae'r adran hon yn rhestru'r amodau y bu defnyddwyr Excel yn aml yn chwilio amdanynt yn Google i'ch helpu i anfon e-byst o Excel yn awtomatig pan fodlonir amod penodol.

3.1 Anfon e-bost yn awtomatig pan fydd cell yn cyrraedd gwerth penodol

Fel y dangosir yn y sgrin isod, mae'n debyg bod gennych dabl gwerthu gyda chell D6 yn cynnwys cyfanswm y gwerthiant. Rydych chi eisiau anfon e-bost yn awtomatig at eich rheolwr yn seiliedig ar gyfanswm y gwerthiant, er enghraifft, creu neu anfon e-bost yn awtomatig pan fydd cyfanswm y gwerthiant yn fwy na 10000 ond os yw cyfanswm y gwerthiant yn hafal i neu'n llai na 10000, ni chymerir unrhyw gamau.

1. Yn y daflen waith yn cynnwys y tabl gwerthu, cliciwch ar y dde y tab taflen a chliciwch Gweld y cod o'r ddewislen clicio ar y dde.

2. Yn yr agoriad Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, gludwch y cod VBA canlynol yn y Dalen (Cod) ffenestr.

Cod VBA: Anfonwch e-bost yn awtomatig pan fydd cell yn cyrraedd gwerth penodol yn 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

Nodiadau:

1) D6 yw'r gell y byddwch yn anfon e-bost yn seiliedig ar ei werth.
2) > 10000 yw'r amod, sy'n golygu y bydd e-bost yn cael ei anfon pan fydd y gwerth yn D6 yn fwy na 10000.
3) Ystod ("D6") yn y llinell ganlynol yn golygu y bydd y corff e-bost yn cyfeirio at y gwerth yn D6.
xMailBody = "Hi boss" & vbNewLine & vbNewLine & _
"Total sales of over $10,000 in January: " & Range("D6")
4) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
5) Newid y pwnc e-bost yn y llinell .Subject = "prawf".
6) Yn y ddwy linell ganlynol:
.CC = "Cyfeiriad E-bost"
.BCC = "Cyfeiriad E-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “Cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.

O hyn ymlaen, pan fydd y gwerth yng nghell D6 yn fwy na 10000, bydd e-bost yn cael ei greu fel y dangosir yn y sgrin isod.


3.2 Anfon e-bost yn awtomatig pan fydd gwerth cell yn newid

Fel y dangosir yn y screenshot isod, mae'n debyg eich bod yn derbyn llyfr gwaith sy'n cynnwys gwerthiannau misol mewn gwahanol daflenni gwaith a chyfanswm y gwerthiant mewn taflen waith. Mae angen i chi wirio cyfanswm y gwerthiant ac os yw cyfanswm y gwerthiant yn cael ei addasu, anfonwch y llyfr gwaith yn ôl at yr anfonwr a hysbysu'r anfonwr bod y gell wedi'i haddasu.

1. Yn y daflen waith yn cynnwys y tabl gwerthu, cliciwch ar y dde y tab taflen a chliciwch Gweld y cod o'r ddewislen clicio ar y dde.

2. Yn yr agoriad Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, gludwch y cod VBA canlynol yn y ffenestr Dalen (Cod).

Cod VBA: Anfonwch e-bost yn awtomatig pan fydd gwerth cell penodedig yn newid

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

Nodiadau: Yn y cod,

1) B14 yn y cod yn golygu pan fydd gwerth cell B14 yn newid, byddwch yn anfon e-bost.
2) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
3) Newid y pwnc e-bost yn y llinell .Subject = "Taflen waith wedi'i haddasu".
4) Yn y ddwy linell ganlynol:
.CC = "Cyfeiriad E-bost"
.BCC = "Cyfeiriad E-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “Cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.

O hyn ymlaen, pan fydd y gwerth yng nghell B14 yn newid, bydd neges Outlook yn cael ei chreu'n awtomatig fel y dangosir yn y screenshot isod.


3.3 Anfon e-bost yn awtomatig pan fydd llyfr gwaith yn cael ei gadw

Os oes gennych lyfr gwaith y mae angen ei rannu ag eraill ar ôl ei addasu, fel arfer mae angen i chi gadw'r llyfr gwaith, lansio'r cleient e-bost, creu e-bost newydd gyda'r llyfr gwaith hwn ynghlwm, llunio'r meysydd cyfatebol ac yna anfon yr e-bost. Bydd yr adran hon yn dangos dull i chi greu e-bost yn awtomatig bob tro pan fyddwch chi'n cadw'r llyfr gwaith. Gwnewch fel a ganlyn.

1. Gwasgwch y Alt + F11 allweddi i agor y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.

2. Yn y ffenestr hon, cliciwch ddwywaith Llyfr Gwaith hwn yn y Prosiect cwarel, yna gludwch y cod VBA canlynol yn y Y Llyfr Gwaith hwn (Cod) ffenestr.

Cod VBA: Anfonwch e-bost yn awtomatig pan fydd llyfr gwaith yn cael ei gadw

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

Nodiadau: Yn y cod,

1) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
2) Newid y pwnc a'r corff e-bost ar wahân yn y llinellau .Subject = "Mae'r llyfr gwaith wedi'i ddiweddaru" ac .Body = "Helo," & Chr(13) & Chr(13) & "Ffeil wedi ei diweddaru nawr.".
3) Yn y ddwy linell ganlynol:
.CC = "Cyfeiriad E-bost"
.BCC = "Cyfeiriad E-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “Cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.

3. O hyn ymlaen, wrth arbed y llyfr gwaith trwy wasgu'r Ctrl + S bysellau neu glicio ar y Save botwm, bydd e-bost Outlook yn cael ei greu yn awtomatig. Gallwch weld bod y llyfr gwaith cyfredol wedi'i atodi fel atodiad a bod y meysydd wedi'u llenwi â'r cynnwys penodedig. Gweler y sgrinlun:

Awgrymiadau: Os ydych chi'n defnyddio'r llyfr gwaith hwn yn aml, dyma argymell eich bod chi'n cadw'r llyfr gwaith fel Llyfr Gwaith Macro-alluogedig Excel i arbed y sgript VBA i'w ddefnyddio yn y dyfodol. Mae'r camau fel a ganlyn.

1) Cliciwch Ffeil > Save As, ac yna dewiswch ffolder i gadw'r ffeil.
2) Yn y Save As blwch deialog, ailenwi'r ffeil yn ôl yr angen yn y enw ffeil blwch testun, dewiswch Llyfr Gwaith Macro-alluogedig Excel yn y Cadw fel math rhestr ostwng, ac yn olaf cliciwch y Save botwm. Gweler y screenshot:


3.4 Anfon e-bost yn awtomatig ar amser penodol

Gadewch i ni ddweud bod angen i chi anfon e-bost gyda llyfr gwaith aseiniad tasg at rywun bob bore Gwener am 9am, ac eisiau gwneud hyn yn awtomatig yn Excel heb orfod gweithredu'r cleient e-bost â llaw. Bydd yr adran hon yn dangos y dull i chi ei wneud.

1. Gwasgwch y Alt + F11 allweddi i agor y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.

2. Yn y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch Mewnosod > Modiwl. Yna gludwch y cod VBA canlynol yn ffenestr y Modiwl.

Cod VBA1 : E-bostiwch y llyfr gwaith cyfredol fel atodiad o 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. Yn y ffenestr hon, cliciwch ddwywaith Llyfr Gwaith hwn yn y Prosiect cwarel, yna gludwch y cod VBA canlynol yn y Y Llyfr Gwaith hwn (Cod) ffenestr.

Cod VBA 2: Anfon e-bost yn awtomatig ar amser penodol

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

Nodiadau:

1) Mewn cod VBA 1, Dydd Gwener yn y llinell ganlynol yn golygu y bydd yr e-bost yn cael ei anfon yn awtomatig bob dydd Gwener;
Os Diwrnod yr Wythnos(Dyddiad) = vbFriday Yna
2) Yn VBA cod 1 a VBA cod 2, yr amser 09:00:00 yn golygu y bydd yr e-bost yn cael ei anfon am 9am ar ddiwrnod penodol.
Gallwch chi newid y diwrnod a'r amser yn ôl yr angen.
3) Pan fydd y cod yn rhedeg, bydd e-bost yn cael ei greu. Os nad ydych chi eisiau popio'r ffenestr neges a bod angen ei hanfon yn uniongyrchol, tynnwch y llinell .Arddangos o'r cod VBA 1, a thynnwch y apostrophe cyn y llinell '.Anfon.

4. Arbedwch y codau ac yna arbedwch y llyfr gwaith fel llyfr gwaith macro-alluogi Excel fel a ganlyn.

4.1) Cliciwch Ffeil > Save As, ac yna dewiswch ffolder i gadw'r ffeil.
4.2) Yn y Save As blwch deialog, ailenwi'r ffeil yn ôl yr angen yn y enw ffeil blwch testun, dewiswch Llyfr Gwaith Macro-alluogedig Excel yn y Cadw fel math rhestr ostwng, ac yn olaf cliciwch y Save botwm. Gweler y screenshot:

5. Agorwch eich llyfr gwaith macro-alluogi sydd wedi'i gadw, yna bydd e-bost yn cael ei greu neu ei anfon yn awtomatig pan fydd y diwrnod a'r amser yn cyrraedd.


4. Pynciau ychwanegol

Mae'r adran hon yn casglu pynciau eraill y gallech ddod ar eu traws wrth anfon e-byst gan Excel.

4.1 E-bostiwch ystod o gelloedd o Excel (gyda sgript VBA)

Gan dybio bod tabl gwerthu misol mewn taflen waith Excel fel y dangosir yn y sgrin isod, ac mae angen i chi anfon y tabl gwerthu misol hwn at eraill fel cynnwys corff e-bost neu fel atodiad yn uniongyrchol. Yma rydym yn darparu dau ddull i chi ei wneud.

4.1.1 E-bostiwch ystod fel rhan o gynnwys y corff o Excel

Gallwch redeg y cod VBA canlynol i anfon ystod o gelloedd fel rhan o gynnwys y corff e-bost o Excel

1. Gwasgwch y Alt + F11 allweddi i agor y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.

2. Yn y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch offer > Cyfeiriadau. Ac yna gwiriwch y Llyfrgell Gwrthrychau Microsoft Outlook 16.0 blwch a chlicio OK yn y Cyfeiriadau - VBAProject blwch deialog.

3. Cliciwch Mewnosod > Modiwlau, yna gludwch y cod VBA canlynol yn y Modiwl (Cod) ffenestr.

Cod VBA: Anfonwch ystod o gelloedd fel rhan o gynnwys y corff e-bost o 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

Nodiadau: Yn y cod,

1) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
2) Yn y ddwy linell ganlynol:
.CC = "Cyfeiriad E-bost"
.BCC = "Cyfeiriad E-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “Cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.

4. Gwasgwch y F5 allwedd i redeg y cod. Yn y popped i fyny Kutools ar gyfer Excel blwch deialog, dewiswch yr ystod o gelloedd y mae angen i chi eu hanfon fel rhan o gynnwys corff e-bost, yna cliciwch OK. Gweler y screenshot:

Yna bydd e-bost Outlook yn cael ei greu yn awtomatig. Gallwch weld bod yr ystod a ddewisoch yn y daflen waith yn cael ei fewnosod yn y corff e-bost. Gweler y sgrinlun:


4.1.2 E-bostiwch ystod fel atodiad o Excel

Os oes angen e-bostio ystod o gelloedd mewn taflen waith fel atodiad o Excel. Gallwch roi cynnig ar y cod VBA canlynol.

1. Gwasgwch y Alt + F11 allweddi.

2. Yn yr agoriad Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch Mewnosod > Modiwlau. Yna gludwch y cod VBA canlynol yn y Modiwl (Cod) ffenestr.

Cod VBA: E-bostiwch ystod fel atodiad o 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

Nodiadau:

1) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
2) Newid y pwnc e-bost a'r corff e-bost ar wahân yn y llinell .Subject = "Gwerthiannau misol ar gyfer 2021" ac .Body = "Helo, gwiriwch a darllenwch y ddogfen hon.";
3) Yn y ddwy linell ganlynol:
.CC = "cyfeiriad e-bost"
.BCC = "cyfeiriad e-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.

3. Gwasgwch y F5 allwedd i redeg y cod. Yn y popped i fyny Kutools ar gyfer Excel blwch deialog, dewiswch yr ystod o gelloedd y mae angen i chi eu hanfon fel atodiad mewn e-bost, yna cliciwch OK. Gweler y screenshot:

Yna bydd e-bost Outlook yn cael ei greu yn awtomatig. Ac mae'r ystod o gelloedd a ddewisoch yn y daflen waith yn cael ei gadw fel llyfr gwaith Excel a'i atodi yn y ffenestr Neges. Gweler y sgrinlun:


4.2 Anfon e-byst pan fo botwm yn cael ei glicio yn Excel

Os oes angen i chi glicio botwm gorchymyn i sbarduno macro ar gyfer anfon e-bost gan Excel, er enghraifft, anfonwch y llyfr gwaith cyfredol fel atodiad i eraill trwy glicio botwm gorchymyn yn y daflen waith. Gallwch ddilyn y camau fel a ganlyn i'w gyflawni.

1. Cliciwch Datblygwr > Mewnosod > Botwm Gorchymyn (Rheoli ActiveX). Yna tynnwch botwm gorchymyn yn y daflen waith.

Awgrymiadau: Os oes gennych chi botwm gorchymyn yn barod, sgipiwch y cam hwn.

2. Gwasgwch y Alt + F11 allweddi i agor y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr. Yn y ffenestr, cliciwch Mewnosod > Modiwl, yna gludwch y cod VBA (y cod a ddefnyddir i e-bostio'r llyfr gwaith cyfredol fel atodiad o Excel) yn ffenestr y Modiwl (Cod).

Cliciwch yma i gael y cod.

Nodyn: Dyma enw'r macro a grewyd gennych yng ngham 2 Anfon LlyfrGwaith.

3. Gwasgwch y Alt + Q allweddi i gau'r Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.

4. Nawr mae angen i chi aseinio'r macro i'r botwm gorchymyn. De-gliciwch y botwm gorchymyn, dewiswch Gweld y Cod o'r ddewislen cywir ar y dde.

5. Yna y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr yn ymddangos, gallwch weld y ddwy linell ganlynol wedi'u rhestru yn y Dalen (Cod) ffenestr.

Private Sub CommandButton1_Click()
End Sub

6. Rhowch enw'r macro presennol y tu mewn i'r subprocedure ar gyfer y botwm gorchymyn.

7. Gwasgwch y Alt + Q allweddi i gau'r Golygydd Sylfaenol Gweledol, a chliciwch Datblygwr > Modd Dylunio i ddiffodd y modd dylunio.

Nawr gallwch chi glicio ar y botwm gorchymyn i anfon e-bost gyda'r llyfr gwaith cyfredol fel atodiad yn yr e-bost.


4.3 Anfon e-byst o gyfrif e-bost penodedig

Fel arfer, wrth lansio e-bost o Excel gyda chod VBA, cyfrif e-bost yr anfonwr yw'r cyfrif diofyn yn Outlook. Tybiwch eich bod wedi ffurfweddu sawl cyfrif e-bost yn eich Outlook ac eisiau defnyddio cyfrif penodol i anfon yr e-byst o Excel yn lle defnyddio'r cyfrif diofyn. Gall y cod VBA canlynol helpu.

Mae'r codau canlynol yn angenrheidiol yn yr achos hwn.

Cod VBA 1:

Dim OutlookMail As Outlook.MailItem

Cod 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

Sut i ddefnyddio'r cod VBA uchod?

1) Yn eich cod eich hun, mae angen i chi ddisodli'r llinell fel “Dim OutlookMail Fel Gwrthrych” gyda chod VBA 1;
2) Ychwanegwch y cod VBA 2 o dan y llinell “Ar Ail-ddechrau Gwall Nesaf” yn eich cod. Yna nodwch y cyfeiriad e-bost y byddwch yn ei ddefnyddio i anfon yr e-bost yng nghod 2 VBA.

Yn yr enghraifft hon, rydyn ni'n mynd i nodi cyfrif e-bost penodol i anfon y llyfr gwaith cyfredol fel atodiad gan Excel. Gwnewch fel a ganlyn.

1. Gwasgwch y Alt + F11 allweddi. Yn y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch offer > Cyfeiriadau. Ac yna gwiriwch y Llyfrgell Gwrthrychau Microsoft Outlook 16.0 blwch a chlicio OK yn y Cyfeiriadau - VBAProject blwch deialog.

2. Cliciwch Mewnosod > Modiwlau. Yna gludwch y cod VBA canlynol yn y Modiwl (Cod) ffenestr.

Cod VBA: Anfonwch y llyfr gwaith cyfredol fel atodiad e-bost gan Excel trwy gyfrif Outlook penodedig

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. Gwasgwch y F5 allwedd i redeg y cod. Yna neges e-bost Outlook pops i fyny, gallwch weld bod y O Mae'r maes wedi'i lenwi â'r cyfrif e-bost a nodwyd gennych yn y cod.


4.4 Anfon e-bost pan gyrhaeddir dyddiad

Os oes angen i chi anfon e-bost yn seiliedig ar ddyddiad dyledus penodol, er enghraifft, fel y dangosir yn y sgrin isod, mae tabl prosiect, pan fydd y dyddiad dyledus yn yr ystod E2:E7 yn hafal i neu'n llai na 7 diwrnod o heddiw (gan dybio mai'r dyddiad cyfredol yw 2022/8/4), bydd e-bost yn cael ei anfon yn awtomatig at yr arweinwyr prosiect cyfatebol a'u hysbysu bod y prosiect ar fin dod i ben.

1. Yn y daflen waith yn cynnwys y tabl prosiect, de-gliciwch y tab taflen a chliciwch Gweld y cod o'r ddewislen clicio ar y dde.

2. Yn yr agoriad Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, gludwch y cod VBA canlynol yn y Dalen (Cod) ffenestr.

Cod VBA: Anfonwch e-bost yn awtomatig pan fydd dyddiad dyledus yn cael ei fodloni

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

Nodiadau: Yn y cod,

1) Yn y llinellau canlynol, E2: E7 yn cynnwys y dyddiadau dyledus y byddwch yn anfon e-byst yn seiliedig arnynt. C2: C7 yn cynnwys y cyfeiriadau e-bost y byddwch yn anfon e-byst atynt. Ac D2: D7 yn cynnwys y sylwadau y byddwch yn eu hychwanegu yn y corff e-bost i hysbysu'r derbynwyr bod y prosiect ar fin dod i ben. Gallwch chi newid yr ystodau yn ôl yr angen.
Gosod xRgDate = Ystod ("E2:E7")
Gosod xRgSend = Ystod ("C2: C7")
Gosod xRgText = Ystod ("D2: D7")
2) Mae'r llinell ganlynol yn golygu bod yn rhaid i'r dyddiad dyledus fod yn fwy nag 1 diwrnod ac yn hafal i neu'n llai na 7 diwrnod o heddiw. Gallwch ei newid yn ôl yr angen.
Os CDate(xRgDateVal) - Dyddiad <= 7 A CDate(xRgDateVal) - Dyddiad> 0 Yna
3) Yn y llinell .i= , os gwelwch yn dda disodli gyda chyfeiriad e-bost y derbynnydd go iawn. Os oes angen mwy nag un cyfeiriad e-bost arnoch, gwahanwch nhw gyda hanner colon.
4) Newid y pwnc e-bost yn y llinell .Subject = "Taflen waith wedi'i haddasu".
5) Yn y ddwy linell ganlynol:
.CC = "Cyfeiriad E-bost"
.BCC = "Cyfeiriad E-bost"
Os ydych chi am ychwanegu'r derbynwyr cc a bcc, disodli'r testun “Cyfeiriad e-bost” yn y llinellau â'r cyfeiriadau e-bost sydd eu hangen arnoch.
Os nad oes angen y derbynwyr cc a bcc arnoch, ychwanegwch gollnod ' cyn pob llinell.

3. Gwasgwch y F5 allwedd i redeg y cod. Yna, os yw'r dyddiad dod i ben yn cyd-fynd â'r amodau, bydd yr e-bost cyfatebol yn cael ei greu. Yn yr achos hwn, bydd dau e-bost yn cael eu creu fel y dangosir yn y screenshot isod.


5. Offeryn defnyddiol i'ch helpu chi i anfon e-byst o Excel yn hawdd

Os ydych chi'n newbie VBA, efallai na fydd y dulliau uchod yn hawdd i chi eu trin. Yma rydym yn argymell Kutools ar gyfer Excel'S Anfon E-byst nodwedd, gyda'r nodwedd hon, gallwch chi anfon e-byst o Excel yn hawdd gyda sawl clic yn unig. Gwnewch fel a ganlyn.

Cyn gwneud cais Kutools ar gyfer Excel, os gwelwch yn dda ei lawrlwytho a'i osod yn gyntaf.

5.1 Creu rhestr bostio yn hawdd sy'n cynnwys y meysydd e-bost sydd eu hangen arnoch

Cyn cymhwyso'r nodwedd Anfon E-byst, mae angen i chi greu rhestr bostio sy'n cynnwys y meysydd e-bost sydd eu hangen arnoch chi. Yma gall y nodwedd Creu Rhestr Bostio helpu.

1. Cliciwch Kutools Byd Gwaith > Creu Rhestr Bostio.

2. Yn yr agoriad Creu Rhestr Bostio ffenestr, mae angen i chi ffurfweddu fel a ganlyn.

2.1) Yn y Colofnau ar gyfer rhestr bostio adran, gwiriwch y meysydd sydd eu hangen arnoch yn eich e-bost;
2.2) Yn y Atodi ffeiliau adran, gwiriwch un neu fwy o atodiadau y gallai fod eu hangen arnoch;
2.3) Pennu lleoliad i osod y rhestr bostio;
2.4) Cliciwch y Creu botwm. Gweler y screenshot:

Yna mae tabl rhestr bostio sampl yn cael ei greu fel y dangosir yn y screenshot isod.

3. Nawr mae angen i chi ddisodli'r data gwreiddiol yn y sampl gyda'ch data maes eich hun.

Nawr rydych chi wedi creu tabl rhestr bostio. Ewch ymlaen i gymhwyso'r Anfon E-byst nodwedd i anfon e-byst o Excel yn seiliedig ar y meysydd a grëwyd gennych.

  Os ydych chi am gael treial am ddim (30 diwrnod) o'r cyfleustodau hwn, cliciwch i'w lawrlwytho, ac yna ewch i gymhwyso'r llawdriniaeth yn ôl y camau uchod.


5.2 Anfon e-byst yn hawdd gan gynnwys y meysydd a grëwyd gennych yn y rhestr bostio

Ar ôl creu'r rhestr bostio (cliciwch i wybod sut) sy'n cynnwys y meysydd y gallai fod eu hangen arnoch yn eich e-byst, gallwch nawr anfon e-byst o Excel gyda'r meysydd hyn.

1. Dewiswch y rhestr bostio gyfan, cliciwch Kutools Byd Gwaith > Anfon E-byst.

2. Yn y Anfon E-byst blwch deialog, gwnewch y ffurfweddiad canlynol.

2.1) Mae meysydd yn cael eu poblogi i mewn i flwch deialog pob maes yn awtomatig gan y meysydd a nodwyd gennych yn y rhestr bostio;
Awgrymiadau: Os nad oes angen maes penodol arnoch ar hyn o bryd, dewiswch opsiwn gwag yn y gwymplen.
2.2) Mewnosod Deiliad Lle (dewisol): Os oes angen i chi fewnosod gwybodaeth amrywiol mewn corff e-bost.
Er enghraifft, efallai y bydd angen i chi anfon e-bost at aml-dderbynwyr gydag enw personol ar gyfer pob un, mae angen i chi osod y cyrchwr yn y corff e-bost lle mae angen i chi fewnosod y dalfan, dewiswch y maes “E: Enw Cyntaf” (neu faes enw arall yn eich rhestr e-bostio), ac yna cliciwch ar Mewnosod Dalfan botwm;
Pan fydd y derbynwyr yn derbyn yr e-bost, mae'r corff e-bost yn aros yr un peth ond mae'r enwau'n unigryw ar gyfer pob un.
2.3) Cyfansoddwch y corff e-bost yn ôl yr angen;
2.4) Gwnewch yn siŵr bod y Anfon e-byst trwy Outlook blwch yn cael ei wirio;
2.5) Cliciwch y anfon botwm. Gweler y screenshot:

3. Yna a Kutools ar gyfer Excel blwch deialog pops up i ddweud wrthych faint o negeseuon e-bost yn cael eu hanfon, cliciwch y OK botwm i gau'r blwch deialog hwn.

Awgrymiadau: Gallwch fynd i'r Eitemau wedi'u hanfon ffolder yn eich Outlook i wirio'r e-byst a anfonwyd gennych.


5.3 Anfon e-byst gyda chorff HTML yn hawdd (gan gynnwys hyperddolen, delwedd, ac ati)

Mae'r nodwedd Anfon E-byst hon yn caniatáu ichi adeiladu e-bost html, sy'n cynnwys hyperddolen, delwedd, gwahanol feintiau ffont a lliwiau ffont, ac ati.

Ar ôl creu rhestr bostio sy'n cynnwys y meysydd e-bost sydd eu hangen arnoch,

Pan fyddwch yn ffurfweddu'r Anfon E-byst blwch deialog, gallwch chi wneud cynnwys y corff yn gyfoethog trwy ddefnyddio'r opsiynau ar y bar offer.

Gweler y sgrinlun isod:


5.4 Mewnosod llofnod rhagosodedig Outlook yn hawdd wrth anfon e-byst

Yn y dull uchod, fe wnaethom ddangos cod VBA i'ch helpu i anfon e-byst gyda llofnod rhagosodedig Outlook. Yma gyda'r nodwedd Anfon E-byst, does ond angen i chi wirio opsiwn, yna bydd llofnod rhagosodedig Outlook yn cael ei fewnosod mewn negeseuon e-bost a anfonwyd gennych o Excel.

Ar ôl creu rhestr bostio sy'n cynnwys y meysydd e-bost sydd eu hangen arnoch,

Pryd ffurfweddu'r Anfon E-byst blwch deialog, mae angen i chi glicio Dewisiadau > Defnyddiwch osodiadau llofnod Outlook.

Nodyn: Sicrhewch fod marc siec yn dangos cyn yr opsiwn Gosodiadau llofnod Defnyddiwch Outlook.

Pan fydd derbynwyr yn derbyn yr e-bost, gallant weld llofnod rhagosodedig Outlook wedi'i arddangos ar ddiwedd y corff e-bost.


5.5 Anfon e-byst yn hawdd o gyfrif e-bost penodedig

I ddefnyddio cyfrif e-bost penodol i anfon e-byst o Excel yn lle defnyddio'r cyfrif diofyn, gall y nodwedd Anfon E-byst hefyd helpu i'w wneud yn hawdd.

Ar ôl creu rhestr bostio sy'n cynnwys y meysydd e-bost sydd eu hangen arnoch,

Pryd ffurfweddu'r Anfon E-byst blwch deialog, mae angen i chi glicio Dewisiadau > Anfonwyd o, yna cliciwch ar y cyfrif e-bost y mae angen i chi anfon e-byst ohono.

Nodyn: Ar ôl dewis y cyfrif e-bost, bydd marc siec yn cael ei arddangos cyn iddo.

Cliciwch yma i wybod mwy am y nodwedd Anfon E-byst hon.

  Os ydych chi am gael treial am ddim (30 diwrnod) o'r cyfleustodau hwn, cliciwch i'w lawrlwytho, ac yna ewch i gymhwyso'r llawdriniaeth yn ôl y camau uchod.

I gloi, mae anfon e-byst o Excel yn eithaf defnyddiol yn ein gwaith dyddiol. Mae'r erthygl hon yn ymdrin â phynciau mwy cynhwysfawr o negeseuon e-bost yn cael eu hanfon gan Excel, os oes pynciau eraill neu atebion haws, gadewch sylw i roi gwybod i mi.

Offer Cynhyrchiant Swyddfa Gorau

🤖 Kutools AI Aide: Chwyldro dadansoddi data yn seiliedig ar: Cyflawniad Deallus   |  Cynhyrchu Cod  |  Creu Fformiwlâu Personol  |  Dadansoddi Data a Chynhyrchu Siartiau  |  Invoke Swyddogaethau Kutools...
Nodweddion Poblogaidd: Darganfod, Amlygu neu Adnabod Dyblygiadau   |  Dileu Rhesi Gwag   |  Cyfuno Colofnau neu Gelloedd heb Colli Data   |   Rownd heb Fformiwla ...
Super-edrych: VLookup Meini Prawf Lluosog    VLookup Gwerth Lluosog  |   VLookup Ar Draws Taflenni Lluosog   |   Edrych Niwlog ....
Rhestr gwympo Uwch: Creu Rhestr Gollwng yn Gyflym   |  Rhestr Gollwng Dibynnol   |  Rhestr Gollwng Aml-ddewis ....
Rheolwr Colofn: Ychwanegu Nifer Penodol o Golofnau  |  Symud Colofnau  |  Toglo Statws Gwelededd Colofnau Cudd  |  Cymharwch Ystodau a Cholofnau ...
Nodweddion dan Sylw: Ffocws ar y Grid   |  Golwg Dylunio   |   Bar Fformiwla Mawr    Rheolwr Llyfr Gwaith a Thaflen   |  Llyfrgell Adnoddau (Testun Auto)   |  Dewiswr Dyddiad   |  Cyfuno Taflenni Gwaith   |  Amgryptio/Dadgryptio Celloedd    Anfon E-byst trwy Restr   |  Hidlo Super   |   Hidlo Arbennig (hidlo mewn print trwm/italig/strikethrough...) ...
15 Set Offer Gorau12 Testun offer (Ychwanegu Testun, Dileu Cymeriadau,...)   |   50 + Siart Mathau (Siart Gantt,...)   |   40+ Ymarferol Fformiwlâu (Cyfrifwch oedran yn seiliedig ar ben-blwydd,...)   |   19 mewnosod offer (Mewnosod Cod QR, Mewnosod Llun o'r Llwybr,...)   |   12 Trosi offer (Rhifau i Eiriau, Trosi arian cyfred,...)   |   7 Uno a Hollti offer (Rhesi Cyfuno Uwch, Celloedd Hollt,...)   |   ... a mwy

Supercharge Eich Sgiliau Excel gyda Kutools ar gyfer Excel, a Phrofiad Effeithlonrwydd Fel Erioed Erioed. Kutools ar gyfer Excel Yn Cynnig Dros 300 o Nodweddion Uwch i Hybu Cynhyrchiant ac Arbed Amser.  Cliciwch Yma i Gael Y Nodwedd Sydd Ei Angen Y Mwyaf...

Disgrifiad


Mae Office Tab yn dod â rhyngwyneb Tabbed i Office, ac yn Gwneud Eich Gwaith yn Haws o lawer

  • Galluogi golygu a darllen tabbed yn Word, Excel, PowerPoint, Cyhoeddwr, Mynediad, Visio a Phrosiect.
  • Agor a chreu dogfennau lluosog mewn tabiau newydd o'r un ffenestr, yn hytrach nag mewn ffenestri newydd.
  • Yn cynyddu eich cynhyrchiant 50%, ac yn lleihau cannoedd o gliciau llygoden i chi bob dydd!
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