:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser
🪷 คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ

มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 2003

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
User avatar
songsug
Member
Member
Posts: 71
Joined: Wed Apr 04, 2012 11:22 am
Location: สมุทรสาคร

มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 2003

#1

Post by songsug »

อาจารย์และผู้รู้โปรดชี้แนะครับ ผมลองใน 2007 แล้วมันไม่ติดครับ
พอดีว่าที่บริษัทผมเกี่ยวกับการเซ็นเอกสารบางอย่างเรานำระบบฐานข้อมูล 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 หาวิธีแก้ไขไม่่ได้จริงๆครับ
You do not have the required permissions to view the files attached to this post.
User avatar
tupthai
Bronze
Bronze
Posts: 302
Joined: Sat Feb 04, 2012 2:49 pm

Re: มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 200

#2

Post by tupthai »

SendKeys "%{s}", True 'send the email without prompts
http://www.tek-tips.com/faqs.cfm?fid=4334
User avatar
songsug
Member
Member
Posts: 71
Joined: Wed Apr 04, 2012 11:22 am
Location: สมุทรสาคร

Re: มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 200

#3

Post by songsug »

ผมเข้าไม่ได้ครับ Copy วางไห้ได้ไหมครับ
ข้อผิดพลาด 324 (net::ERR_EMPTY_RESPONSE): เซิร์ฟเวอร์ปิดการเชื่อมต่อโดยไม่ส่งข้อมูลใดๆ
User avatar
tupthai
Bronze
Bronze
Posts: 302
Joined: Sat Feb 04, 2012 2:49 pm

Re: มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 200

#4

Post by tupthai »

Code: Select all

Sub Mailer()
Sheets("BB Email Data").Select
pathname = [b11].value 'defines attachment
dname = [b14].value 'defines date for subject
Dim objol As New outlook.Application
Dim objmail As MailItem
Set objol = New outlook.Application
Set objmail = objol.createitem(olmailitem)
    With objmail
        .To = "whoever" 'enter in here the email address
        .cc = "whoever" 'enter in here the email address
        .Subject = "Daily test email for  " & dname
        .Body = "Please find attached the teste email" & _
            vbCrLf & "If you have any queries can you please let me know" & vbCrLf
        .NoAging = True
        .Attachments.Add pathname 'adds attachment to email
        .display
    End With
    Set objmail = Nothing
    Set objol = Nothing
    SendKeys "%{s}", True 'send the email without prompts
    
End Sub
User avatar
songsug
Member
Member
Posts: 71
Joined: Wed Apr 04, 2012 11:22 am
Location: สมุทรสาคร

Re: มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 200

#5

Post by songsug »

ตัวนี้ต้องใช้ Object Library ของ 2007 ครับซึ่งเครื่องที่เป็น 2003 จะเข้าไป Add ไม่ได้ครับ ปกติตอน Add จะเข้าไปที่ Reference แล้วก็ Brown ครับ แต่ Code ที่คุณให้ผมมาใช้กับเครื่องที่ลง 2007 ได้ครับ T_T แต่ก็ขอบคุณสำหรับข้อมูลครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31177
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 200

#6

Post by snasui »

:D ได้ลองใช้ Application.DisplayAlerts = False แล้วหรือไม่ครับ

Code: Select all

Sub test()
    Application.DisplayAlerts = False
    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
    Application.DisplayAlerts = True
End Sub
Note: เครื่องผมทดสอบแล้วไม่เกิดปัญหาเนื่องจากเป็น Outlook 2010, Windows 7, Excel 2003, Excel 2010, Excel 2007
User avatar
songsug
Member
Member
Posts: 71
Joined: Wed Apr 04, 2012 11:22 am
Location: สมุทรสาคร

Re: มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 200

#7

Post by songsug »

เครื่องผมก้ผ่านครับอาจารย์ แต่เครื่อง User อื่นๆรวมไปถึงเครื่องผู้บริหารไม่ผ่านครับ แล้ว User บางคนไปกด No ครับผมเคยลองหาแล้วในเว็บมีโปรแกรมกด Auto yes อยู่แต่ผมดูแล้วไม่เหมาะสมที่จะนำมาใช้ครับ เครื่องผมก็ลง Office 2007 แล้วก็ 2003 ผมก็ใช้ได้ครับ ปวดหัวมากเลยครับอาจารย์
User avatar
snasui
Site Admin
Site Admin
Posts: 31177
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: มีปัญหาเรื่องการส่ง Mail จาก Excel Vba ครับ ใน Excel 200

#8

Post by snasui »

:D ลองทดสอบ Code ของ Ron ตาม Link นี้ดูครับ Using VBA send email
Post Reply