Tisdag, 20 September 2022
  1 svar
  4.9K besök
0
Röster
Ångra
Hej, jag är väldigt ny på excel och undrar om det är möjligt att ställa in en excel-kod på ett sätt som skulle skicka ett e-postmeddelande till en specifik person när ett värde i en kolumn markeras som slutfört. Till exempel, om JobX är i A2, och på samma rad projektledarens initialer finns på den raden, B2, markeras det här jobbet som slutfört i C2, när kolumn C markeras som slutfört ska ett e-postmeddelande skickas till PM vars initialer är i den raden. Jag hittade en kod som kan skicka ett e-postmeddelande när en kolumns cell markeras som klar, men undrade om jag kan vara mer specifik som att skicka ett e-postmeddelande till en specifik person när vissa villkor är uppfyllda. Tack,
chris
1 år sedan
·
#3076
0
Röster
Ångra
Hej där,

Prova koden nedan :)
Private Sub Worksheet_Change(ByVal Target As Range)
Dim xRg As Range
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Range("c:c"), Target) Is Nothing Then Exit Sub
If Target.Value = "done" Then
Set xRg = Target.Offset(0, -1) 'Find email address
Call Mail_small_Text_Outlook(xRg.Value)
End If

End Sub

Sub Mail_small_Text_Outlook(ByVal xTo As String)
Dim xOutApp As Object
Dim xOutMail As Object
Dim xMailBody As String
Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
xMailBody = "Hi there" & vbNewLine & vbNewLine & _
"This is line 1" & vbNewLine & _
"This is line 2"
On Error Resume Next
With xOutMail
.To = xTo
.CC = ""
.BCC = ""
.Subject = "send by cell value test"
.Body = xMailBody
.Display 'or use
' .Send
End With
Set xOutMail = Nothing
Set xOutApp = Nothing
End Sub

Du nämnde att du vill skicka ett e-postmeddelande till PM vars initialer som på samma rad som markerats som slutförda. Finns hans/hennes e-postadress på samma rad? Koden på 6:e raden hjälper till att hitta projektledarens initialer, du kan ändra den så att den hittar e-postadressen.

Vänligen ändra strängen "klar" på 5:e raden till den faktiska strängen du använder för att markera jobbet som slutfört.

Observera att du kan ändra kodavsnittet nedan efter dina behov.
xMailBody = "Hej där" & vbNewLine & vbNewLine & _
"Detta är linje 1" & vbNewLine & _
"Detta är linje 2"
On Error Resume Next
Med xOutMail
.To = xTo
.CC = ""
.BCC = ""
.Subject = "skicka med cellvärde test"
.Body = xMailBody
.Visa 'eller använd
' .Skicka
Sluta med


Om du har några frågor, tveka inte att fråga mig.

Amanda
  • Sida:
  • 1
Det finns inga svar på det här inlägget än.