Page 1 of 2
ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Email.
Posted: Fri Nov 09, 2012 8:21 am
by Supfile2529
***********VBA***************
With olNewEmail 'Attach template
.To = strContactEmail '"xxxxx@xxxxxxx"
.CC = strCc
.Body = strEmailText
.Subject = strEmailSubject
.Attachments.Add (StrPartName & StrFileName)
.display
End With
'**************************
Code ที่ได้ก็มีแค่นี้หล่ะครับ
คือผมอยากจะ Copy Image ที่อยู่ในหน้า Excel ในเปิดอยู่(คือ Copy เอาแต่รูปน่ะครับ )แต่ตามจริงผมสั่งให้ Copy ได้แล้ว
Windows("Daily MFG meeting report.xls").Activate
Sheets("Image Send Mail").Select
Application.CutCopyMode = xlCopy
Selection.Copy
ที่ยังไม่ได้คือ ที่จะเอารูปไป Paste to email (Outlook)
ผู้รู้ หรือใครที่จะให้คำแนะนำได้ก็ช่วยด้วยน่ะครับ
ขอบคุณทุกท่านครับ.
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 9:04 am
by snasui
แนบไฟล์ตัวอย่างที่มีรูปพร้อม Code ทีเขียนไว้แล้วมาด้วย จะได้ช่วยทดสอบได้ครับ
กรณีการโพสต์ Code ให้แสดงเป็น Code ดูตัวอย่างได้ทีนี่ครับ
viewtopic.php?f=3&t=1187&sid=09bf68c58c ... e544625204
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 9:13 am
by Supfile2529
อ่อคับ ขอโทษด้วยครับ น้องใหม่ครับ มีอะไรก้อแนะนำกันได้น่ะครับ.
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 9:30 am
by snasui
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 9:51 am
by Supfile2529
File Run
ผู้ที่เอา File นี้ไป Run ต้องดูด้วยน่ะครับ
ถ้ามัน Error ก็คือ Part ที่ Program วิ่งไปแล้วไม่เจอน่ะครับ เลย Error.
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 10:16 am
by Supfile2529
การทำงานของ Code
1. code จะทำการจัดขนาด และส่วนต่างของ Row และ col ให้ดูสวยงาน
2. code จะสั่งให้ Copy File นั้นไปไว้ ที่ Server โดยทำการ Check Name File.
3. code จะสั้งให้ กลับมาที่ (Sheet1) ที่จะทำการ Copy Cell(1,10) สมมุติน่ะครับ
4. แล้วการไป Paste ลงอีก (Sheet2)
5. แล้วก็จะทำการ จัดการกับ E-mail(Outlook) โดยการสร้าง New Mail
6. จะ Paste Image ที่เรา Copy มาได้อย่างไรครับ.....? นี้คือคำปัญหาครับ
ขอบคุณครับ ทุกท่านที่ให้คำปรึกษา.
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 11:47 am
by snasui
ตามข้อ 5 และ 6 ด้านบนชื่อ Procedure ใดบ้าง เพื่อจะได้เข้าถึงปัญหาได้โดยไวครับ
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 12:33 pm
by Supfile2529
snasui wrote: ตามข้อ 5 และ 6 ด้านบนชื่อ Procedure ใดบ้าง เพื่อจะได้เข้าถึงปัญหาได้โดยไวครับ
Code: Select all
Private Sub OpenEmailToSend()
Dim olLook As Object 'Start MS Outlook
Dim olNewEmail As Object 'New email in Outlook
Dim strContactEmail As String 'Contact email address
Dim strCustomer As String 'Customer Name
Dim strSite As String 'Site Name
Windows("Daily MFG meeting report.xls").Activate
Sheets("Image Send Mail").Select
Application.CutCopyMode = xlCopy
Selection.Copy
strContactEmail = "xxxxx" 'ตัวแปร mail To
strCc = "xxx" ' ตัวแปร mail CC
strEmailText = strEmailText
strEmailSubject = "Daily Manager Minute of Meeting on " & Format(Date, "DD MMM 'YYYY") & "_NAVANAKORN" '01 Nov.'12_NAVANAKORN"
Set olLook = CreateObject("Outlook.Application")
Set olNewEmail = olLook.createitem(0)
strEmailText = "Dear all," & Chr$(13) & _
Chr$(13) & "Pls. see attached file for Daily manager meeting on " & Format(Date, "DD - MMM - YYyy") & Chr$(13) & Chr$(13) & Chr$(13) & Chr$(13)
With olNewEmail 'Attach template
.To = strContactEmail '"Veerapong@mik-denshi.co.th"
.CC = strCc
.Body = strEmailText
.Subject = strEmailSubject
.Attachments.Add (StrPartName & StrFileName)
.display
End With
Set olLook = Nothing
Set olNewEmail = Nothing
End Sub
ตาม Code ชุดนี้เลยครับ.
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 1:18 pm
by Supfile2529
อาจารย์ไปไหนกันหมดครับ ผมอยากจะรู้วิธี Paste Image to mail
ผู้รู้ช่วยด้วย ผม online อยู่ถึง 16.30 น. น่ะครับ หรือไม่ตอนไหนก็ได้
ขอบคุณครับ.
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 1:33 pm
by bank9597
Supfile2529 wrote:อาจารย์ไปไหนกันหมดครับ ผมอยากจะรู้วิธี Paste Image to mail
ผู้รู้ช่วยด้วย ผม online อยู่ถึง 16.30 น. น่ะครับ หรือไม่ตอนไหนก็ได้
ขอบคุณครับ.
ต้องรอครับ เพราะผู้ตอบหลายท่านมีงานประจำอยู่ เช่น อาจารย์ เป็นต้น อีกอย่างคือเรื่องของ VBA นั้นเป็นเรื่องยากและตอบมั่วไปไม่ได้ ต้องมีความจริงๆถึงจะตอบได้ครับ
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 1:40 pm
by Supfile2529
bank9597 wrote:
ต้องรอครับ เพราะผู้ตอบหลายท่านมีงานประจำอยู่ เช่น อาจารย์ เป็นต้น อีกอย่างคือเรื่องของ VBA นั้นเป็นเรื่องยากและตอบมั่วไปไม่ได้ ต้องมีความจริงๆถึงจะตอบได้ครับ
อ๋อครับ ผมต้องขอโทษด้วยจริง ๆ ครับ พอดีอยากจะรู้คำตอบมากไปหน่อยน่ะครับ
ตอนนี้ผมก็กำลังหาทาง Paste Image ลงใน E-mail (Outlook) อยู่ สู้ต่อครับ.
แต่ยังไงก็ ขอขอบคุณครับ.
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 1:58 pm
by bank9597
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 2:05 pm
by Supfile2529
ขอขอบคุณมาก ๆ ครับ จะเข้าใจหรือเปล่า ก็ไม่ทราบน่ะครับ
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 3:18 pm
by snasui
การแนบภาพจาก Object ใน Excel ให้ทำการ Save Object ใน Excel ให้เป็นภาพก่อน จากนั้นค่อยนำเข้ามา Attach ใน e-mail
ลองดูตัวอย่างใน Code ด้านล่างครับ
Code: Select all
Private Sub OpenEmailToSend()
Dim olLook As Object 'Start MS Outlook
Dim olNewEmail As Object 'New email in Outlook
Dim strContactEmail As String 'Contact email address
Dim strCustomer As String 'Customer Name
Dim strSite As String 'Site Name
Windows("Daily MFG meeting report.xls").Activate
Sheets("Image Send Mail").Select
Application.CutCopyMode = xlCopy
Selection.Copy
strContactEmail = "XXXx"
strCc = "XXXX"
strEmailText = strEmailText
strEmailSubject = "Daily Manager Minute of Meeting on " & Format(Date, "DD MMM 'YYYY") & "_NAVANAKORN" '01 Nov.'12_NAVANAKORN"
Set olLook = CreateObject("Outlook.Application")
Set olNewEmail = olLook.createitem(0)
strEmailText = "Dear all," & Chr$(13) & _
Chr$(13) & "Pls. see attached file for Daily manager meeting on " & Format(Date, "DD - MMM - YYyy") & Chr$(13) & Chr$(13) & Chr$(13) & Chr$(13)
With olNewEmail 'Attach template
.To = strContactEmail '"Veerapong@mik-denshi.co.th"
.CC = strCc
.Body = strEmailText
.Subject = strEmailSubject
.Attachments.Add ("C:\ObjPic.gif")
.display
End With
Set olLook = Nothing
Set olNewEmail = Nothing
End Sub
Sub CopyObjToGIF()
Dim obj As Object
Dim cht As Excel.ChartObject
Const strPath As String = "C:\"
Application.ScreenUpdating = False
Sheets("Image Send Mail").Shapes.Range( _
Array("Picture 111")).Select
Selection.Copy
With Sheets("Image Send Mail")
Set cht = .ChartObjects _
.Add(0, 0, .Range("A1:O39").Width, .Range("A1:O39").Height)
End With
cht.Chart.Paste
cht.Chart.Export strPath & "ObjPic.gif"
cht.Delete
Set cht = Nothing
Set obj = Nothing
Application.ScreenUpdating = True
End Sub
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 3:33 pm
by Supfile2529
อาจารย์ครับ ขอถามอีกหน่อยครับ
Code: Select all
Sub CopyObjToGIF()
Dim obj As Object
Dim cht As Excel.ChartObject
Const strPath As String = "C:\"
Application.ScreenUpdating = False
Sheets("Image Send Mail").Shapes.Range( _
Array("[color=#0000FF]Picture 111[/color]")).Select
Selection.Copy
With Sheets("Image Send Mail")
Set cht = .ChartObjects _
.Add(0, 0, .Range("A1:O39").Width, .Range("A1:O39").Height)
End With
cht.Chart.Paste
cht.Chart.Export strPath & "ObjPic.gif"
cht.Delete
Set cht = Nothing
Set obj = Nothing
Application.ScreenUpdating = True
End Sub
*** Array("
Picture 111")).Select คือว่าเราจะรู้ได้ไงครับว่า
Pricture ชืออะไรน่ะครับ
เพราะว่า ชื่อจะเปลี่ยนไปตลอดน่ะครับ มีวิธี Check Name ตัวนี้ไหมครับ
ขอบคุณครับ
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 3:41 pm
by Supfile2529
Code: Select all
With olNewEmail 'Attach template
.To = strContactEmail '"Veerapong@mik-denshi.co.th"
.CC = strCc
.Body = strEmailText
.Subject = strEmailSubject
.Attachments.Add ("C:\ObjPic.gif")
.display
End With
อาจารย์ครับ Code ตัวที่เพิ่มมานี้เป็น Code Attachments.Add น่ะครับอาจารย์
แล้วถ้าผมอยากให้ Paste ลงหน้า New mail หล่ะครับ ต้องทำยังไงครับ
ขอบคุณมาก ๆ ครับ
ได้ความรู้มาก ๆ เลยครับ
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 3:44 pm
by snasui
การจะทราบว่า Object ชื่ออะไรให้คลิกลงไปใน Object นั้นแล้วดูที่ Name Box ตามภาพด้านล่างครับ
การจะทราบชื่อของ Object ต่าง ๆ เราสามารถใช้การ Loop เข้ามาช่วยได้เช่นกัน ตัวอย่างการ Loop แต่ละ Object ดูที่นี่ครับ
http://snasui.blogspot.com/2011/05/folder-excel.html
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 3:46 pm
by snasui
Supfile2529 wrote:อาจารย์ครับ Code ตัวที่เพิ่มมานี้เป็น Code Attachments.Add น่ะครับอาจารย์
แล้วถ้าผมอยากให้ Paste ลงหน้า New mail หล่ะครับ ต้องทำยังไงครับ
ผมไม่เคยเขียน Code สำหรับการ Add Object เข้าไปตรง ๆ ลอง Search จากแหล่งอื่น ๆ แล้วปรับใช้ดู ติดตรงไหนค่อยถามมาครับ
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 3:48 pm
by Supfile2529
Code: Select all
With olNewEmail 'Attach template
.To = strContactEmail '"Veerapong@mik-denshi.co.th"
.CC = strCc
.body = strEmailText
.Subject = strEmailSubject
.Attachments.Add (StrPartName & StrFileName)
.Attachments.Add ("C:\ObjPic.gif")
.HTMLBody = "<img src='cid:ObjPic.gif' height=480 width=360>"
.Display
End With
.HTMLBody = "<img src='cid:ObjPic.gif' height=480 width=360>" คือผมได้เพิ่ม Code ชุดนี้เข้าไปน่ะครับ
Re: ผู้ช่วยด้วยครับ Code Copy Image Excel แล้ว Paste To Ema
Posted: Fri Nov 09, 2012 3:51 pm
by snasui
บรรทัดนั้นนำมาจากไหนครับ