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

Kako poslati e-poštni opomnik ali obvestilo, če je delovni zvezek posodobljen v Excelu?

V nekaterih primerih boste morda morali sprožiti e-poštno obvestilo določenemu prejemniku, če so v poslanem delovnem zvezku posodobljeni podatki. Ta članek vam bo pokazal način, kako to doseči.

Pošljite e-poštni opomnik ali obvestilo, če je delovni zvezek posodobljen s kodo VBA


Pošljite e-poštni opomnik ali obvestilo, če je delovni zvezek posodobljen s kodo VBA

Če posodobite delovni zvezek, po e-pošti pošljite opomnik ali obvestilo.

1. V delovnem zvezku odprite določen delovni list in na podlagi posodobljenih podatkov v njem boste poslali e-poštno obvestilo.

2. Z desno miškino tipko kliknite jeziček lista in izberite Ogled kode v meniju z desnim klikom. Oglejte si posnetek zaslona:

2. V Ljubljani Microsoft Visual Basic za aplikacije okno, kopirajte in prilepite naslednjo kodo v okno kode. Oglejte si posnetek zaslona:

Koda VBA: Če je delovni zvezek posodobljen, pošljite e-poštni opomnik ali obvestilo

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

Opombe: E-poštni naslov zamenjajte z e-poštnim naslovom prejemnika v vrstici .To = "E-poštni naslov". In spremenite polja Cc, Subject in body v kodo VBA, kot potrebujete.

3. Pritisnite druga + Q tipke za zapiranje Microsoft Visual Basic za aplikacije okno.

4. Po urejanju celice na delovnem listu a Kutools za Excel Pojavi se pogovorno okno, kot je prikazano spodaj. Če želite v e-poštno sporočilo priložiti posodobljeni delovni zvezek, kliknite Da . Če ne, kliknite Ne gumb.

5. Nato se samodejno ustvari e-poštno sporočilo s priloženo posodobljeno delovno knjigo ali brez nje. Vsa navedena polja so navedena tudi v e-pošti. Kliknite Pošlji gumb, da ga pošljete.

Opombe: Koda VBA deluje samo, če Outlook uporabljate kot svoj e-poštni program.


Sorodni članki:


Najboljša orodja za pisarniško produktivnost

Kutools za Excel rešuje večino vaših težav in poveča vašo produktivnost za 80%

  • Ponovna uporaba: Hitro vstavite zapletene formule, grafikoni in vse, kar ste že uporabljali; Šifriraj celice z geslom; Ustvari poštni seznam in pošiljanje e-pošte ...
  • Vrstica Super Formula (enostavno urejanje več vrstic besedila in formule); Bralna postavitev (enostavno branje in urejanje velikega števila celic); Prilepite v filtrirani obseg...
  • Združi celice / vrstice / stolpce brez izgube podatkov; Vsebina razdeljenih celic; Združi podvojene vrstice / stolpce... prepreči podvojene celice; Primerjaj obsege...
  • Izberite Duplicate ali Unique Vrstice; Izberite prazne vrstice (vse celice so prazne); Super Find in Fuzzy Find v mnogih delovnih zvezkih; Naključna izbira ...
  • Natančna kopija Več celic brez spreminjanja sklica formule; Samodejno ustvarjanje referenc na več listov; Vstavi oznake, Potrditvena polja in še več ...
  • Izvleček besedila, Dodaj besedilo, Odstrani po položaju, Odstrani presledek; Ustvari in natisni vmesne seštevke strani Pretvarjanje med vsebino celic in komentarji...
  • Super filter (shranite in uporabite sheme filtrov za druge liste); Napredno razvrščanje glede na mesec / teden / dan, pogostost in drugo; Poseben filter s krepko, ležeče ...
  • Združite delovne zvezke in delovne liste; Spoji tabele na podlagi ključnih stolpcev; Razdelite podatke na več listov; Paketna pretvorba xls, xlsx in PDF...
  • Več kot 300 zmogljivih funkcij. Podpira Office / Excel 2007-2021 in 365. Podpira vse jezike. Enostavna uvedba v vašem podjetju ali organizaciji. 30-dnevna brezplačna preizkusna različica vseh funkcij. 60-dnevna garancija vračila denarja.
zavihek kte 201905

Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo

  • Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!
dno pisarniške mize
Komentarji (20)
Ocene še ni. Bodite prvi in ​​ocenite!
Ta komentar je moderator na spletnem mestu minimiziral
Če je kdo našel to stran, ki se sprašuje, kako poslati e-pošto iz Excela z uporabo CDO, sem sestavil Google Doc -- Kako poslati e-pošto iz Excela z Gmailom (https://docs.google.com/document/d/1u5VLzCApU3k4-9Vp9LEfqyFZ6u9tAY0avNPYN_1FsN4/edit?usp=sharing) s kodo na GitHub bistvu (https://gist.github.com/bergerjac/7355d4e528fa6c64a02dc494f3d241a1)
Ta komentar je moderator na spletnem mestu minimiziral
Ali lahko v tem CC več kot oseba? Hvala
Ta komentar je moderator na spletnem mestu minimiziral
Zdravo Leah,
E-poštne naslove vnesite neposredno v vrstico .cc="" in jih ločite s podpičjem, na primer .cc = "AAA@gmail.com;BBB@gmail.com"
Ta komentar je moderator na spletnem mestu minimiziral
Kodo sem kopiral in prilepil točno takšno, kot je s te strani, toda ko spremenim svoj dokument, dobim sporočilo "Syntax Error" in ta vrstica poudarja: Dim xOutApp As Object. Vsaka pomoč bi bila hvaležna.
Ta komentar je moderator na spletnem mestu minimiziral
Živjo Judy,
Ali bi zagotovili različico Excela, ki jo uporabljate? Hvala za vaš komentar.
Ta komentar je moderator na spletnem mestu minimiziral
Pozdravljeni, koda deluje odlično. Ko pa se celica s pomočjo operacije makra, ki kopira in prilepi nižjo vrednost v določeno celico, spremeni pod mejno vrednost, se koda ne zdi, da se sproži.

Prav tako bi rad to kodo uporabil za več celic. Ali lahko večkrat kopiram in prilepim kodo ter spremenim vsako kopirano različico, da ustreza potrebam vsake celice? Ali obstaja boljši način za to. Tega ne morem ugotoviti. Hvala vam!
Ta komentar je moderator na spletnem mestu minimiziral
Oprostite, to sem objavil v napačnem članku. Objavil bom v pravem članku
Ta komentar je moderator na spletnem mestu minimiziral
Ko sem poskušal nekaj spremeniti v celici, je sporočilo zahtevalo konfiguracijo e-pošte za Outlook in kar naprej sprašuje moje geslo.
Ta komentar je moderator na spletnem mestu minimiziral
Živjo MJ,
Katero različico Excela uporabljate? Ali lahko zagotovite posnetek zaslona poziva?
Ta komentar je moderator na spletnem mestu minimiziral
Zame se koda vedno znova izvaja, kot da se nikoli ne konča zanka. Zaprem e-pošto, znova zahteva, da jo pošljem...
Ta komentar je moderator na spletnem mestu minimiziral
prosim, malo sem zmeden, toda kje v kodi zazna, da se list spreminja/posodablja?
poskušam napisati kodo, kjer se tabela na določenem listu pošlje, ko se tabela spremeni (ali natančneje, ko se dodajo vrstice)
Hvala!
Ta komentar je moderator na spletnem mestu minimiziral
Hi,
Koda v objavi zazna vse celice v celotnem delovnem listu na podlagi prve vrstice "Zasebni pod delovni list_Change(ByVal Target As Range)".
Če želite poslati e-pošto z določeno tabelo, ko je spremenjena, lahko poskusite z naslednjim VBA.
Opombe: prosimo, spremenite "Tabela1" v svoje ime tabele.
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2022/5/27
    Dim xYesOrNo As Integer
    Dim xTableName As String
    Dim xTableRg As Range
    Dim I, J As Long
    Dim xEmailBody As String
    Dim xMailOut As Object
    Dim xOutApp As Object
    On Error Resume Next
    
    xTableName = "Table1" 'The name of the table you will send when it is modified
    Set xTableRg = ActiveSheet.ListObjects(xTableName).Range
    If Intersect(Target, xTableRg) Is Nothing Then Exit Sub

    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailOut = xOutApp.CreateItem(olMailItem)
    For I = 1 To xTableRg.Rows.Count
        For J = 1 To xTableRg.Columns.Count
            xEmailBody = xEmailBody & "  " & xTableRg.Cells(I, J).Value
        Next
        xEmailBody = xEmailBody & vbNewLine
    Next
    xEmailBody = "Hi" & vbLf & vbLf & " body of message you want to add" & vbLf & vbLf & xEmailBody & vbNewLine
    With xMailOut
        .Subject = "Test"
        .To = "XXX@163.com"
        .Body = xEmailBody
        .Display
        '.Send
    End With
    Set xMailOut = Nothing
    Set xOutApp = Nothing
End Sub
Ta komentar je moderator na spletnem mestu minimiziral
Hola cristal, donde dice Private Sub Worksheet_Change, deberia poner el nombre de mi excel ali ne?
Los rangos de (I,J) cambiarlos por los valores de celdas que yo dese estar mirando si cambian?
Ta komentar je moderator na spletnem mestu minimiziral
HOLA CRISTAL, ME GUSTARIA PONERME EN CONTACTO DIRECTO CONTIGO, NE CESITO DE TU AYUDA EN EXCEL,GRACIAS
Ta komentar je moderator na spletnem mestu minimiziral
HOLA CRISTAL, ME GUSTARIA PONERME EN CONTACTO DIRECTO CONTIGO, PARA PEDIR TU AYUDA EN UN PROBLEMITA EN UNA HOJA DE EXCEL
Ta komentar je moderator na spletnem mestu minimiziral
Pozdravljeni GERARDO MARTIN OLVERA,
Lahko mi pošljete e-pošto na zxm@addin99.com.
Ta komentar je moderator na spletnem mestu minimiziral
Živijo, kateri del kode naj izbrišem, da pošlje e-pošto samo, ko kliknem »Shrani« in ne ob vsakem dejanju?
Ta komentar je moderator na spletnem mestu minimiziral
Živjo donkeh,
V kodi VBA zamenjajte naslednjo vrstico:
.Prikaz
z
.Pošlji
Ta komentar je moderator na spletnem mestu minimiziral
Spremljam potrdila za prijavo v Excelov list. moram dobiti opomnik, preden certifikati potečejo. prosim svetujte mi.
Ta komentar je moderator na spletnem mestu minimiziral
Živjo rahul rajan,

Ali želite prikazati pojavni opomnik glede na datum celice?
Tu še ni objavljenih komentarjev
Pustite vaše komentarje
Objava kot gost
×
Ocenite to objavo:
0   Znaki
Predlagane lokacije

Sledi nam

Copyright © 2009 - www.extendoffice.com. | Vse pravice pridržane. Poganja ga ExtendOffice. | Kazalo
Microsoft in logotip Office sta blagovni znamki ali registrirani blagovni znamki družbe Microsoft Corporation v ZDA in / ali drugih državah.
Zaščiteno s Sectigo SSL