Note: The other languages of the website are Google-translated. Back to English
Logga in  \/ 
x
or
x
Registrera  \/ 
x

or

Hur skickar jag e-postpåminnelse eller avisering om arbetsboken uppdateras i Excel?

I vissa fall kan du behöva utlösa ett e-postmeddelande till en angiven mottagare om det finns data uppdaterade i arbetsboken du har skickat. Den här artikeln visar metod för att uppnå det.

Skicka e-postpåminnelse eller avisering om arbetsboken uppdateras med VBA-kod


Skicka e-postpåminnelse eller avisering om arbetsboken uppdateras med VBA-kod


Gör så här för att skicka e-postpåminnelse eller avisering om arbetsboken är uppdaterad.

1. I arbetsboken öppnar du ett angivet kalkylblad som du skickar e-postmeddelande baserat på de uppdaterade uppgifterna inuti.

2. Högerklicka på arkfliken och välj Visa kod från högerklickmenyn. Se skärmdump:

2. I Microsoft Visual Basic för applikationer fönster, kopiera och klistra in följande kod i kodfönstret. Se skärmdump:

VBA-kod: Skicka e-postpåminnelse eller avisering om arbetsboken uppdateras

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2017/9/14
    Dim xOutApp As Object
    Dim xMailItem As Object
    Dim xName As String
    Dim xYesOrNo As Integer
    On Error Resume Next
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailItem = xOutApp.CreateItem(0)
    xYesOrNo = MsgBox("Want to attach updated workbook in email?", vbInformation + vbYesNo, "KuTools For Excel")
    If xYesOrNo = 6 Then ActiveWorkbook.Save
    If xYesOrNo = 6 Then xName = ActiveWorkbook.FullName
    With xMailItem
        .To = "Email Address"
        .cc = ""
        .Subject = "email notification test"
        .Body = "Hi," & Chr(13) & Chr(13) & "File is now updated."
        If xYesOrNo = 6 Then .Attachments.Add xName
        .Display
    End With
    xMailItem = Nothing
    xOutApp = Nothing
End Sub

Anmärkningar: Ersätt e-postadressen med mottagarens e-postadress i raden .To = "E-postadress". Och ändra Cc, ämne såväl som kroppsfält i VBA-koden som du behöver.

3. tryck på andra + Q för att stänga Microsoft Visual Basic för applikationer fönster.

4. Efter redigering av en cell i kalkylbladet, a Kutools för Excel dialogrutan dyker upp som bilden nedan visas. Om du vill bifoga den uppdaterade arbetsboken i e-postmeddelandet, klicka på Ja knapp. Om inte, klicka på Nej knapp.

5. Sedan skapas ett e-postmeddelande automatiskt med eller utan den uppdaterade arbetsboken bifogad. Och alla angivna fält listas också i e-postmeddelandet. Klicka på Skicka för att skicka den.

Anmärkningar: VBA-koden fungerar bara när du använder Outlook som ditt e-postprogram.


Relaterade artiklar:


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2019 och 365. Stöder alla språk. Enkel distribution i ditt företag eller organisation. Fullständiga funktioner 30-dagars gratis provperiod. 60-dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50%och minskar hundratals musklick för dig varje dag!
officetab botten
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Guest · 8 months ago
    For me the code runs again and again, its like never ending loop. I close email it asks again to send it...
  • To post as a guest, your comment is unpublished.
    MJ · 1 years ago
    When I tried to change something in a cell a message prompted for Outlook email configuration and it just keeps on asking for my password.



    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Hi MJ,
      Which Excel version are you using? Can you provide a screenshot of the prompt?
  • To post as a guest, your comment is unpublished.
    James Crook · 1 years ago
    Sorry, I posted this in the wrong article. I will post in the correct article
  • To post as a guest, your comment is unpublished.
    James Crook · 1 years ago
    Hello there, The code works great. However, when a cell changes to below the threshold point via a macro operation that copies and pastes the lower value into the designated cell, the code doesn't seem to trigger.

    Also, I would like to apply this code to several cells. Can I copy and paste the code several times and change each copied version to fit each cells' needs? Is there a better way to do that. I can't figure that out. Thank you!
  • To post as a guest, your comment is unpublished.
    Juno24 · 2 years ago
    I copied and pasted the code exactly as-is from this page, but when I make a change to my document I get the message "Syntax Error" and this line highlights: Dim xOutApp As Object. Any help would be appreciated.
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Hi Judy,
      Would you provide the Excel version you are using? Thank you for your comment.
  • To post as a guest, your comment is unpublished.
    Leah · 2 years ago
    Can i CC more than person in this? Thanks
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Hi Leah,
      Please enter the email addresses directly in the .cc="" line and separate them with semicolon, such as .cc = "AAA@gmail.com;BBB@gmail.com"
  • To post as a guest, your comment is unpublished.
    Jake Berger · 3 years ago
    If anyone found this page wondering how to send an email from Excel using CDO, I threw together a Google Doc -- How to Send Email from Excel using Gmail (https://docs.google.com/document/d/1u5VLzCApU3k4-9Vp9LEfqyFZ6u9tAY0avNPYN_1FsN4/edit?usp=sharing) with code on GitHub gist (https://gist.github.com/bergerjac/7355d4e528fa6c64a02dc494f3d241a1)