EXCEL TOOLS
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
Excel Add-ins ที่พัฒนาโดยคุณสันติพงศ์ ณสุย (MVP Excel 2010-2020) ด้วยภาษา C# เพื่อแก้ไขปัญหาไฟล์ใหญ่ คำนวณนาน ทำงานช้า จัดการข้อมูลต่าง ๆ ที่ทำงานประจำวันได้อย่างสะดวกรวดเร็ว สนใจคลิกไปดูได้ที่นี่ครับ => Excel Tools
[code]
และปิดด้วย [/code]
ตัวอย่างเช่น [code]dim r as range[/code]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)Code: Select all
Public tbl As ListObject
Function GetTableData(projRow)
projName = tbl.DataBodyRange.Cells(projRow, tbl.ListColumns("In Charge").Index)
projDesc = tbl.DataBodyRange.Cells(projRow, tbl.ListColumns("Model").Index)
projDesc1 = tbl.DataBodyRange.Cells(projRow, tbl.ListColumns("Item").Index)
projDeadline = tbl.DataBodyRange.Cells(projRow, tbl.ListColumns("Target").Index)
projFullMsg = projName & " | " & projDesc & " : " & projDesc1 & " | Dead Line : " & projDeadline
GetTableData = projFullMsg
End Function
Sub LoopTable()
Set tbl = ActiveSheet.ListObjects("Table1")
dateToday = Date
NumRows = tbl.DataBodyRange.Rows.Count
CountDue = 0
For i = 1 To NumRows
projDeadline = tbl.DataBodyRange.Cells(i, tbl.ListColumns("Target").Index)
projFinish = tbl.DataBodyRange.Cells(i, tbl.ListColumns("Status").Index)
If projFinish <> "Y" And projDeadline < dateToday Then
DueMsg = DueMsg & GetTableData(i) & Chr(13) & Chr(10)
CountDue = CountDue + 1
End If
Next i
LineNotify "Your Job Overdue!! : " & CountDue & " Items" & Chr(13) & Chr(10) & DueMsg
NumDayNoti = Range("I1")
CountPreNoti = 0
For i = 1 To NumRows
projDeadline = tbl.DataBodyRange.Cells(i, tbl.ListColumns("Target").Index)
projFinish = tbl.DataBodyRange.Cells(i, tbl.ListColumns("Status").Index)
If projFinish <> "Y" And (projDeadline - NumDayNoti) <= dateToday And projDeadline >= dateToday Then
PreNotiMsg = PreNotiMsg & GetTableData(i) & Chr(13) & Chr(10)
CountPreNoti = CountPreNoti + 1
End If
Next i
LineNotify "Close to deadline : " & CountPreNoti & " Items" & Chr(13) & Chr(10) & PreNotiMsg
End Sub
snasui wrote: Tue Jul 14, 2020 7:51 pm กรุณาเขียน Code สำหรับการส่งเมลด้วย Outlook มาโดยตรงหากติดปัญหาให้แนบไฟล์ที่มี Code มาด้วยจะได้ช่วยดูต่อไปจากนั้นครับ
ขอบคุณมากครับsnasui wrote: Wed Jul 15, 2020 8:39 am โดยทั่วไปเนื้อหาอีเมลเขียนไว้ที่ไหนก็ได้ให้สะดวกต่อการปรับเปลี่ยน ข้อจำกัดของการเขียนไว้ใน Code ที่เรียกกันว่า Hard code จะไม่ยืดหยุ่นต่อการใช้งานครับ
สำหรับการส่งอีเมลผ่าน Outlook ด้วย VBA ลองศึกษาจาก Link นี้ซึ่งจะมีความละเอียดและครบถ้วนแห่งหนึ่งใน Internet ครับ https://www.rondebruin.nl/win/s1/outlook/mail.htm