: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

เรียนสอบถามการสร้างปุ่มเพื่อส่งอีเมล์หลายๆคนในเมล์เดียว และปัญหา Code Error จากการส่งอีเมล์แบบหลายคน

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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่

Post a reply


This question is a means of preventing automated form submissions by spambots.
Smilies
:D :thup: :cp: :flw: :rz: :sg: :tt: :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :ard: :arl: :aru: :| :mrgreen: :geek: :ugeek:

BBCode is ON
[img] is ON
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: เรียนสอบถามการสร้างปุ่มเพื่อส่งอีเมล์หลายๆคนในเมล์เดียว และปัญหา Code Error จากการส่งอีเมล์แบบหลายคน

Re: เรียนสอบถามการสร้างปุ่มเพื่อส่งอีเมล์หลายๆคนในเมล์เดียว และปัญหา Code Error จากการส่งอีเมล์แบบหลายคน

#4

by snasui » Mon Mar 29, 2021 9:27 pm

:D สองบรรทัดนั้นเอาไว้คืน Memory ให้กับระบบ จะต้องมีคำว่า set นำหน้าด้วย คือเขียนเป็น

Code: Select all

Set OutlookApp = Nothing
Set MItem = Nothing
จึงจะใช้ได้ครับ

Re: เรียนสอบถามการสร้างปุ่มเพื่อส่งอีเมล์หลายๆคนในเมล์เดียว และปัญหา Code Error จากการส่งอีเมล์แบบหลายคน

#3

by GobWeravong » Mon Mar 29, 2021 9:10 pm

เรียน คุณ Snasui จากการนำ Code ที่คุณ Snasui แนะนำ สามารถใช้งานได้ครับ
แต่ติดที่ 2 Code นี้ครับ ที่ Run แล้วมีการเตือน และส่งอีเมล์ผ่านครับ ดังนั้นผมจึงเอาออกไป และเมื่อกดทดสอบส่งเมล์อีกครั้ง ก็สามารถ Run ผ่านและก็ส่งอีเมล์ได้ปกติครับ จึงไม่แน่ใจว่า 2 Code นี้ไว้ทำอะไรครับ
'OutlookApp = Nothing
'MItem = Nothing
ขอบพระคุณเป็นอย่างสูงครับ
Attachments
Code_Error_Test_Email_2.jpg
Code_Error_Test_Email_2.jpg (9.91 KiB) Viewed 27 times

Re: เรียนสอบถามการสร้างปุ่มเพื่อส่งอีเมล์หลายๆคนในเมล์เดียว และปัญหา Code Error จากการส่งอีเมล์แบบหลายคน

#2

by snasui » Mon Mar 29, 2021 5:57 pm

:D การส่งหลายคนแสดงว่าต้องเป็นหัวเรื่องเดียวกัน ไฟล์แนบเหมือนกัน เพียงแต่ผู้รับมีหลายคน

ีควรปรับ Code จาก Loop เป็นแบบอื่น ถ้าต้อง Loop ก็เพียง Loop เพื่อจะสร้างผู้รับเป็น 1 ตัวแปร โดยตัวแปรนั้นคืออีเมลของผู้รับทุกคนครับ

ตัวอย่างการปรับ Code ครับ

Code: Select all

Sub Email2()
    Dim OutlookApp As Object
    Dim MItem As Object
    Dim email_ As String
    Dim s_email_ As String
    Dim subject_ As String
    Dim body_ As String
    Dim rAll As Range
    Dim r As Range
    Dim l As Long
    Dim sh As Worksheet
    
    Set sh = Worksheets("Email")
    l = sh.Range("A" & Rows.Count).End(xlUp).Row
    Set rAll = sh.Range("A2:A" & l - 1)

    Set OutlookApp = CreateObject("Outlook.Application")
   
    Set MItem = OutlookApp.CreateItem(0)
    
    With MItem
        .SentOnBehalfOfName = sh.Range("b2").Value
        .To = VBA.Join(Application.Transpose(rAll), ";")
        .Subject = sh.Range("d2").Value
        .Body = body_ & Chr(13) & sh.Range("E2") & sh.Range("F2") & Chr(13) & _
            sh.Range("G2") & Chr(13) & sh.Range("H2") & Chr(13) & sh.Range("I2") & _
            sh.Range("J2") & Chr(13) & sh.Range("K2") & Chr(13) & sh.Range("L2") & _
            Chr(13) & sh.Range("M2") & Chr(13) & sh.Range("N2") & Chr(13) & _
            sh.Range("O2") & Chr(13) & sh.Range("P2") & Chr(13) & sh.Range("Q2") & _
            Chr(13) & sh.Range("R2") & Chr(13) & sh.Range("S2") & Chr(13) & _
            sh.Range("T2") & Chr(13) & sh.Range("U2") & Chr(13) & sh.Range("V2") & _
            Chr(13) & sh.Range("W2") & Chr(13) & sh.Range("X2") & Chr(13) & _
            sh.Range("Y2") & Chr(13) & sh.Range("Z2")
        .send
    End With

    OutlookApp = Nothing
    MItem = Nothing
    
End Sub

เรียนสอบถามการสร้างปุ่มเพื่อส่งอีเมล์หลายๆคนในเมล์เดียว และปัญหา Code Error จากการส่งอีเมล์แบบหลายคน

#1

by GobWeravong » Mon Mar 29, 2021 4:09 pm

เรียนทุกท่านที่เคารพครับ เนื่องจากผมได้นำไฟล์การส่งอีเมล์ตามโพสในกลุ่มนี้มาศึกษาและดัดแปลงเพื่อมาประยุกต์ใช้งานในการส่งอีเมล์ ซึ่งกรณีที่ส่งอีเมล์ไปหาคนเดียว ปุ่มที่ได้ทำสามารถใช้งานได้ปกติ แต่พอทำปุ่มเพื่อใช้อีก Code VB ที่เป็นการส่งหลายๆคน เช่น ส่ง 3 คน ต้องส่ง ถึง 3 อีเมล์ และพอ Run แล้วขึ้น Error ครับ แต่ระบบส่งเมล์ไปได้ปกติ 3 อีเมล์ และอยากทราบวิธีในการส่งแค่อีเมล์เดียวแต่ไปถึง 3-20 คนได้ จะต้องทำอย่างไรครับ ผมแนบไฟล์ทดสอบมาด้วยครับ ขอบคุณมากๆครับ
Attachments
Test_Sent_Email_Group_V1.xlsm
(157.52 KiB) Downloaded 6 times
Test_Email_1.jpg
Test_Email_1.jpg (68.04 KiB) Viewed 36 times

Top