มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 2003
Posted: Wed Apr 04, 2012 3:16 pm
อาจารย์และผู้รู้โปรดชี้แนะครับ ผมลองใน 2007 แล้วมันไม่ติดครับ
พอดีว่าที่บริษัทผมเกี่ยวกับการเซ็นเอกสารบางอย่างเรานำระบบฐานข้อมูล Sql เข้ามาใช้เชื่อมต่อกับ Excel โดยใช้ Excel เป็นหน้ากากของโปรแกรม โดยเอกสารต่างๆเราจะเปิดเข้าระบบผ่านฟอร์มที่เราทำบน Excel แต่ติดปัญหาเวลาที่กดปุ่มส่ง Mail แจ้งเช่น ตอนเปิดเอกสาร หรือตอนเซ็นเอกสารแล้วมันจะมีกล่องข้อความขึ้นมาแ้จ้งเตือน ซึ่งผมหาข้อมูลในส่วนนี้แล้วจะคล้่ายๆกับการเตื่อนในด้านของความปลอดภัย แต่เจ้าตัวนี้ทำให้ติดปัญหาเวลาใช้งาน User บางคน กด NO Mail มันก้จะไม่ส่งออกไปครับ ทำให้แผนกเอกสารไม่ทราบว่ามีการเปิดเอกสาร หรือมีการเซ็นเอกสารเกิดขึ้นผมจึงอยากรบกวนสอบถาม อาจารย์และผู้รู้ว่าใน Version 2003 นั้นเราสามารถปิดการแจ้งเตือนตามไฟลืแนบมาได้ไหมครับ เพราะตอนนี้ในบริษัทยังใช้งาน Excel 2003 อยู่ เพราะถ้า Up version จะต้องไปตามแก้ไขโปรแกรมมากมายมหาศาลเลยครับ โดยเฉพาะ Object บางตัวที่เปิดใน Version ที่สูงกว่าแล้วมันจะเพี้ยน และรวมไปถึง Object บางตัวที่มันเก็บไว้ใน OFFICE11 เพราะถ้าเปลี่ยนเป็น 2007 มันจะกลายเป็น OFFICE12 (โทษทีครับยาวไปหน่อย กลัวไม่ละเอียด)
Code ที่ผมใช้ส่ง Mail ครับ ตัวอย่าง
-----------------------------------
----------------------------------------------------------------
ผมติดปัญหาการใช้งานอยู่ 2 ตัวนี้ล่ะครับ Fixgrid กับ ส่ง mail หาวิธีแก้ไขไม่่ได้จริงๆครับ
พอดีว่าที่บริษัทผมเกี่ยวกับการเซ็นเอกสารบางอย่างเรานำระบบฐานข้อมูล Sql เข้ามาใช้เชื่อมต่อกับ Excel โดยใช้ Excel เป็นหน้ากากของโปรแกรม โดยเอกสารต่างๆเราจะเปิดเข้าระบบผ่านฟอร์มที่เราทำบน Excel แต่ติดปัญหาเวลาที่กดปุ่มส่ง Mail แจ้งเช่น ตอนเปิดเอกสาร หรือตอนเซ็นเอกสารแล้วมันจะมีกล่องข้อความขึ้นมาแ้จ้งเตือน ซึ่งผมหาข้อมูลในส่วนนี้แล้วจะคล้่ายๆกับการเตื่อนในด้านของความปลอดภัย แต่เจ้าตัวนี้ทำให้ติดปัญหาเวลาใช้งาน User บางคน กด NO Mail มันก้จะไม่ส่งออกไปครับ ทำให้แผนกเอกสารไม่ทราบว่ามีการเปิดเอกสาร หรือมีการเซ็นเอกสารเกิดขึ้นผมจึงอยากรบกวนสอบถาม อาจารย์และผู้รู้ว่าใน Version 2003 นั้นเราสามารถปิดการแจ้งเตือนตามไฟลืแนบมาได้ไหมครับ เพราะตอนนี้ในบริษัทยังใช้งาน Excel 2003 อยู่ เพราะถ้า Up version จะต้องไปตามแก้ไขโปรแกรมมากมายมหาศาลเลยครับ โดยเฉพาะ Object บางตัวที่เปิดใน Version ที่สูงกว่าแล้วมันจะเพี้ยน และรวมไปถึง Object บางตัวที่มันเก็บไว้ใน OFFICE11 เพราะถ้าเปลี่ยนเป็น 2007 มันจะกลายเป็น OFFICE12 (โทษทีครับยาวไปหน่อย กลัวไม่ละเอียด)
Code ที่ผมใช้ส่ง Mail ครับ ตัวอย่าง
-----------------------------------
Code: Select all
Dim MailClient As Object
Dim Mail As Object
Dim reply As Integer
Set MailClient = CreateObject("Outlook.Application")
Set Mail = MailClient.CreateItem(olMailitem)
Mail.Subject = "มีการเปิดเอกสาร Customer Complain โดยเครื่อง AC15"
Mail.Body = "แจ้งเตือนการเปิดเอกสารเลขที่ PR120-142-14K"
Mail.To = "IT18@regal-jewelry.com"
reply = MsgBox("ส่ง Mail แจ้งให้ทราบ ?", vbYesNo, "Question")
If iReply = vbNo Then Exit Sub
Mail.Send
Set MailClient = Nothing
Set Mail = Nothingผมติดปัญหาการใช้งานอยู่ 2 ตัวนี้ล่ะครับ Fixgrid กับ ส่ง mail หาวิธีแก้ไขไม่่ได้จริงๆครับ