Hvordan sendes e-mail, hvis en bestemt celle ændres i Excel?
Denne artikel taler om at sende en e-mail via Outlook, når en celle i et bestemt område ændres i Excel.
Send e-mail, hvis celle i et bestemt område er ændret med VBA-kode
Send e-mail, hvis celle i et bestemt område er ændret med VBA-kode
Hvis du automatisk skal oprette en ny e-mail med aktiv projektmappe vedhæftet, når en celle i området A2:E11 ændres i et bestemt regneark, kan følgende VBA-kode hjælpe dig.
1. I det regneark, som du skal sende e-mail baseret på dens modificerede celle i et bestemt interval, skal du højreklikke på arkfanen og derefter klikke på Vis kode fra genvejsmenuen. Se skærmbillede:
2. I popping up Microsoft Visual Basic til applikationer vindue, skal du kopiere og indsætte under VBA-kode i kodevinduet.
VBA-kode: Send e-mail, hvis celle i et bestemt interval ændres i Excel
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2017/9/12
Dim xRgSel As Range
Dim xOutApp As Object
Dim xMailItem As Object
Dim xMailBody As String
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xRg = Range("A2:E11")
Set xRgSel = Intersect(Target, xRg)
ActiveWorkbook.Save
If Not xRgSel Is Nothing Then
Set xOutApp = CreateObject("Outlook.Application")
Set xMailItem = xOutApp.CreateItem(0)
xMailBody = "Cell(s) " & 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 = "Email Address"
.Subject = "Worksheet modified in " & ThisWorkbook.FullName
.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
Noter:
3. Tryk på andre + Q taster samtidigt for at lukke Microsoft Visual Basic til applikationer vindue.
Fra nu af ændres enhver celle i området A2: E11, en ny e-mail oprettes med den opdaterede projektmappe vedhæftet. Og alle specificerede felter som emne, modtager og e-mail-krop vil blive vist i e-mailen. Send e-mailen.
Bemærk: VBA-koden virker kun, hvis du bruger Outlook som dit e-mail-program.
Relaterede artikler:
- Hvordan sendes automatisk e-mail baseret på celleværdi i Excel?
- Hvordan sendes en e-mail via Outlook, når projektmappen gemmes i Excel?
- Hvordan sendes e-mail, hvis der klikkes på knappen i Excel?
- Hvordan sendes e-mail, hvis forfaldsdato er opfyldt i Excel?
- Hvordan sendes e-mail-påmindelse eller underretning, hvis projektmappen opdateres i Excel?
Bedste kontorproduktivitetsværktøjer
Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid. Klik her for at få den funktion, du har mest brug for...
Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere
- Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
- Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
- Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!