Hey daar!
Probeer de onderstaande code a.u.b.
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
Je hebt aangegeven dat je een e-mail wilt sturen naar de PM wiens initialen in dezelfde rij staan die gemarkeerd is als voltooid. Staat zijn/haar e-mailadres in dezelfde rij? De code in de 6e rij helpt bij het vinden van de initialen van de projectmanagers, u kunt deze wijzigen om het e-mailadres te vinden.
Wijzig de tekenreeks "klaar" in de 5e rij in de daadwerkelijke tekenreeks die u gebruikt om de taak als voltooid te markeren.
Merk op dat u het onderstaande fragment naar wens kunt wijzigen.
xMailBody = "Hallo daar" & vbNewLine & vbNewLine & _
"Dit is regel 1" & vbNewLine & _
"Dit is lijn 2"
On Error Resume Next
Met xOutMail
.Naar = xNaar
.CC = ""
.BCC = ""
.Subject = "verzenden via celwaardetest"
.Body = xMailBody
.Weergeven 'of gebruik'
' .Versturen
Eindigt met
Als u vragen heeft, aarzel dan niet om mij deze te stellen.
Amanda