วันอังคารที่ 20 กันยายน 2022
  1 ตอบกลับ
  เยี่ยมชม 4.7 พันครั้ง
0
โหวต
แก้
สวัสดี ฉันเพิ่งเริ่มใช้ excel และสงสัยว่าเป็นไปได้ไหมที่จะตั้งค่าโค้ด excel ในลักษณะที่จะส่งอีเมลไปยังบุคคลใดบุคคลหนึ่งเมื่อค่าในคอลัมน์ถูกทำเครื่องหมายว่าเสร็จสมบูรณ์ ตัวอย่างเช่น ถ้า JobX อยู่ใน A2 และในแถวเดียวกันกับชื่อย่อของผู้จัดการโครงการอยู่ในแถวนั้น B2 งานนี้จะถูกทำเครื่องหมายว่าเสร็จสิ้นใน C2 เมื่อคอลัมน์ C ถูกทำเครื่องหมายว่าเสร็จสมบูรณ์ อีเมลควรถูกส่งไปยัง PM ที่มีชื่อย่อ อยู่ในแถวนั้น ฉันพบรหัสที่สามารถส่งอีเมลได้เมื่อเซลล์ของคอลัมน์ถูกทำเครื่องหมายว่าเสร็จสมบูรณ์ แต่สงสัยว่าฉันจะเจาะจงมากกว่านี้ได้ไหม เช่น การส่งอีเมลไปยังบุคคลใดบุคคลหนึ่งเมื่อตรงตามเงื่อนไขที่กำหนด ขอบคุณ,
คริส
1 ปีที่ผ่านมา
·
#3076
0
โหวต
แก้
สวัสดี,

กรุณาลองรหัสด้านล่าง :)
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

คุณบอกว่าคุณต้องการส่งอีเมลถึง PM ที่มีข้อความย่อในแถวเดียวกับที่ทำเครื่องหมายว่าเสร็จสมบูรณ์ ที่อยู่อีเมลของเขา/เธออยู่ในแถวเดียวกันหรือไม่ รหัสในแถวที่ 6 ช่วยในการค้นหาชื่อย่อของผู้จัดการโครงการ คุณสามารถเปลี่ยนรหัสเพื่อให้พบที่อยู่อีเมลได้

โปรดเปลี่ยนสตริง "เสร็จสิ้น" ในแถวที่ 5 เป็นสตริงจริงที่คุณใช้เพื่อทำเครื่องหมายว่างานเสร็จสมบูรณ์

โปรดทราบว่าคุณสามารถเปลี่ยนข้อมูลโค้ดด้านล่างตามความต้องการของคุณได้
xMailBody = "สวัสดี" & vbNewLine & vbNewLine & _
"นี่คือบรรทัดที่ 1" & vbNewLine & _
“นี่คือบรรทัดที่ 2”
เกี่ยวกับข้อผิดพลาดต่อไป
ด้วย xOutMail
.ถึง = xTo
.CC = ""
.BCC = ""
.ubject = "ส่งโดยการทดสอบค่าเซลล์"
.Body = xMailBody
.Display 'หรือใช้
' .ส่ง
จบด้วย


หากคุณมีคำถามใด ๆ โปรดอย่าลังเลที่จะถามฉัน

อแมนดา
  • หน้า:
  • 1
ไม่มีคำตอบสำหรับโพสต์นี้