Page 1 of 2

ส่งแจ้งแบบอัตโนมัติ

Posted: Thu Jan 18, 2018 1:21 pm
by มัคกี้เม้า
เรียน สอบถามอาจารย์ค่ะ
ในกรณีที่วันหมดอายุมันเกินกำหนดแล้วจะให้แจ้งเตือนไปที่ E-Mail outlook แบบอัตโนมัติ จะต้องใส่ค่าหรือสูตรอะไรเข้าไปค่ะ
เนื่องจากลองทำดูแล้วไม่ได้ค่ะ รบกวนด้วยค่ะ :) :)

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Thu Jan 18, 2018 1:36 pm
by eyepop99
การจะทำแบบดั่งกลาวต้องอาศัย VBA ช่วย
ซึ่งจะต้องเขียนเองมาก่อน แล้วมาช่วยกันแก้ไข ครับ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Thu Jan 18, 2018 1:56 pm
by มัคกี้เม้า
ขอบคุณนะคะที่ชี้แจงค่ะ รบกวนอีกครั้งค่ะ
Sub SendEmail()
Email = Cells(ActiveCell.Row, 15)
Subj = Cells(ActiveCell.Row, 14)
Msg = Msg & “Dear” & Cells(ActiveCell.Row, 14) & “,” & vbCrLf & vbCrLf & “Certificate will be expired soon Please urgent proceed. ” & vbCrLf & vbCrLf & Cells(ActiveCell.Row, 15)
End Sub

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Thu Jan 18, 2018 3:09 pm
by logic
ดูกฎข้อ 5 ในการวางโค้ดที่ช่องความเห็น แนบไฟล์มาด้วยเพื่อน ๆ จะได้ช่วยกันดูได้ครับ :P

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Thu Jan 18, 2018 3:42 pm
by eyepop99
Code ตัวอย่างสำครับการส่ง E-mail ครับ ลองเล่นดูได้

Code: Select all

Sub Send_Range()


 ActiveSheet.Range("A1:B5").Select   ' data range to send email
  ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
      .Introduction = "This is a sample worksheet."
      .Item.To = "Address"
      .Item.Subject = "My subject"
      .Item.Send
   End With
End Sub


Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Thu Jan 18, 2018 3:53 pm
by มัคกี้เม้า
ขออภัยนะคะ
กำหนดโค้ดไว้ใน VBA แล้วพอsaveออกมา เข้าไปดูมันไม่อยู่ในนั้นเลยเขียนเอาใว้ข้างนอก ขอบคุณคะ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Thu Jan 18, 2018 3:57 pm
by logic
ไฟล์ที่มีโค้ดต้อง Save ไฟล์เป็น .xlsm ถ้าเป็น .xlsx แนบโค้ดไม่ได้ครับ :P

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Thu Jan 18, 2018 3:57 pm
by eyepop99
มัคกี้เม้า wrote: Thu Jan 18, 2018 3:53 pm ขออภัยนะคะ
กำหนดโค้ดไว้ใน VBA แล้วพอsaveออกมา เข้าไปดูมันไม่อยู่ในนั้นเลยเขียนเอาใว้ข้างนอก ขอบคุณคะ
เวลาเซฟ เลือก ไฟล์type เป็น .xlsm ครับ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Fri Jan 19, 2018 8:42 am
by มัคกี้เม้า
เปลี่ยนตามที่บอกแล้วนะคะ นามสกุล งงอยู่ตั้งนาน :) :)

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Fri Jan 19, 2018 1:46 pm
by eyepop99
มัคกี้เม้า wrote: Fri Jan 19, 2018 8:42 am เปลี่ยนตามที่บอกแล้วนะคะ นามสกุล งงอยู่ตั้งนาน :) :)
ช่วยแจ้ง รายละเอียดว่า
เนื้อหาเมลในเมลอยู่ Cell ไหน
และ Email อยู่ใน cell ไหน
Subject อยู่ใน Cell ไหน

ครับ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Fri Jan 19, 2018 1:53 pm
by eyepop99
ลองดูตามไฟล์ แน๊บครับ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Fri Jan 19, 2018 3:40 pm
by มัคกี้เม้า
ขอบคุณมากๆนะคะ
มีเรื่องสงสัยอีกค่ะ
1.กดคำว่า Send Email ในบริษัท AA อยากให้ copy ขอบเขตข้อมูล A3:N5 อันนี้กำหนดได้ค่ะ แต่ปัญหาคือว่า อยากจะ Copy บริษัท BB
โดยขอบเขตข้อมูลมี 2 ชุดคือ หัวเรื่องคือช่วง C3:N3 และ เนื้อหาคือช่วง A6:N7 อันนี้ต้องกำหนดยังไงค่ะ
เพราะต้องการแค่บริษัทใครบริษัทมันค่ะ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Fri Jan 19, 2018 9:56 pm
by snasui
:D ถ้าตาม Code ที่เขียนมาลักษณะการเลือกพื้นที่ที่ไม่ติดกันก็จะเป็นตามด้านล่างครับ

Code: Select all

ActiveSheet.Range("C3:N3, A6:N7").Select 
ส่วนจะส่งได้จริงหรือไม่นั้น ผมไม่ได้ทดสอบนะครับ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Mon Jan 22, 2018 9:04 am
by มัคกี้เม้า
เรียนอาจารย์นะคะ
ลองทำดูแล้วคะโค้ดนั้นจะคัดลอกมาทั้งหมดเลยค่ะไม่เว้นช่วงให้ตั้งแต่ A3:N7 เลยค่ะ
รบกวนท่านผู้รู้ช่วยหน่อยนะคะ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Mon Jan 22, 2018 11:19 am
by eyepop99
snasui wrote: Fri Jan 19, 2018 9:56 pm :D ถ้าตาม Code ที่เขียนมาลักษณะการเลือกพื้นที่ที่ไม่ติดกันก็จะเป็นตามด้านล่างครับ

Code: Select all

ActiveSheet.Range("C3:N3, A6:N7").Select 
ส่วนจะส่งได้จริงหรือไม่นั้น ผมไม่ได้ทดสอบนะครับ
จากที่ลองทดสอบโค๊ดของอาจาร
ผลปรากฏว่า
1 . ก่อนส่งe-email เลือก ช่วงเฉพาะที่กำหนดไว้
2. คือข้อมูลช่วงที่ถูกส่งไปในe-mailนั่น เป็นการส่งเมลไปทั้งชีต ทั้งหมด

จากการทดสอบฟังชัน ของCode ทีละขั้นตอน
ฟังชันนี้ ถ้ามี selection เดียว จะ send แบบ selection
แต่ถ้ามี selection มากกว่า 1 จุด จะ Send ทั้ง sheet เลยครับ

ถ้าต้องการsend แบบ selection มากกว่า 1 จุด อาจจะต้องใช้ ฟังชันอื่นเข้าช่วยครับ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Mon Jan 22, 2018 2:56 pm
by มัคกี้เม้า
เรียนอาจารย์คะ
การกระทำเช่นนั้นต้องใช้ฟังก์ชั่นอะไรเข้าช่วยคะ ถึงจะSelection มากกว่า 1 จุด
รบกวนด้วยค่ะ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Mon Jan 22, 2018 11:11 pm
by snasui
:D ลองทำตามตัวอย่างที่ 1 ของ Ron ตาม Link นี้ดูครับ http://www.rondebruin.nl/win/s1/outlook/bmail3.htm

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Tue Jan 23, 2018 2:03 pm
by มัคกี้เม้า
เรียนท่านผู้รุ้ทุกท่าน
ได้เข้าไปดูตามลิงค์ที่อาจาย์ลงให้จะ Selection มาทั้งหมดเลยค่ะ ตอนนี้ไม่ทราบว่าจะต้องให้อะไรเข้ามาช่วย รบกวนด้วยนะคะ

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Tue Jan 23, 2018 4:31 pm
by logic
ได้เลือกข้อมูลไว้ก่อนรันโค้ดแล้วใช่ไหม ถ้าเลือกเซลล์เดียวมันไปทั้งหมดครับ?
http://www.rondebruin.nl wrote:'Note: if the selection is one cell it will send the whole worksheet

Re: ส่งแจ้งแบบอัตโนมัติ

Posted: Wed Jan 24, 2018 8:48 am
by มัคกี้เม้า
เรียน คุณ Logic คะ
ลองใช้โค้ดที่ได้กำหนดขอบเขตช่วงของข้อมูลไว้แล้วคะ แต่พอให้โค้ดรันแล้วข้อมูลจะมาทั้งหมดค่ะ รบกวนด้วยคะ