Page 1 of 3

อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Sun Sep 05, 2010 8:39 am
by mr.zatan
ต้องการให็ดึงรูปจาก Drive D แสดงตามชื่อที่กำหนดได้มัยครับ.......


ขอตัวอย่างหน่อยครับ...ขอบคุณครับ..

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Sun Sep 05, 2010 11:21 am
by snasui
:D ผมลองเขียน VBA เกี่ยวกับการ Insert ภาพตามไฟล์แนบ ลองทดสอบการใช้งานดูครับ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Mon Sep 06, 2010 9:47 am
by mr.zatan
ขอบคุณมากๆๆๆ ครับ เป็นประโยชน์ มากๆๆ....

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Wed Apr 20, 2011 3:11 pm
by mr.zatan
ถ้าเราจะเพิ่มอีก แถว จะทำยังไงดีครับ.....

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Wed Apr 20, 2011 6:21 pm
by snasui
ช่วยส่งตัวอย่างคำตอบที่ต้องการมาด้วยครับ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Wed Apr 27, 2011 4:54 pm
by mr.zatan
snasui wrote:ช่วยส่งตัวอย่างคำตอบที่ต้องการมาด้วยครับ

เราจะเพิ่มอีกหลายๆๆบรรทัด ทำยังไงครับ...เพราะครั้งที่แล้ว ได้อยู่บรรทัดเดียว

ไฟล์ผมได้แนบมาให้แล้วครับ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Wed Apr 27, 2011 7:10 pm
by snasui
ลองทดสอบใช้ Code ด้านล่างนี้แทน Code เดิมครับ

Code: Select all

Sub ShowPicture()
Dim r As Range, ra As Range
Dim imgIcon As Object
Dim obj As Object
On Error Resume Next
With Worksheets("Sheet1")
    Set ra = .Range("G4", .Range("F65536").End(xlUp).Offset(0, 1))
 End With
 For Each obj In ActiveSheet.Shapes
    If Left(obj.Name, 4) = "Pict" Then
        obj.Delete
    End If
Next obj
For Each r In ra
    Set imgIcon = ActiveSheet.Shapes.AddPicture( _
    Filename:="D:\" & r.Offset(0, -1).Value & ".jpg", LinkToFile:=False, _
    SaveWithDocument:=True, Left:=r.Left, Top:=r.Top, _
    Width:=r.Width, Height:=r.Height)
Next r
End Sub

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Thu Apr 28, 2011 3:54 pm
by mr.zatan
ขอบคุณครับบบ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Fri Jun 03, 2011 6:25 pm
by widtara
ถามต่อค่ะ คือได้ทดลองทำดูใน 2007 ลองสร้างไฟล์ใหม่แล้วเปลี่ยนเป็น ไดร์ c ไม่สามารถทำได้ค่ะ ช่วยแนะนำการดึงภาพมาหน่อยค่ะ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Fri Jun 03, 2011 7:59 pm
by snasui
:D ไฟล์ที่ส่งมานี้เปลี่ยนตำแหน่งเซลล์ที่แสดงภาพ จึงต้องแก้ไข Code VBA ด้วยครับ

จาก

Code: Select all

With Worksheets("Sheet1")
    Set ra = .Range("G4", .Range("F65536").End(xlUp).Offset(0, 1))
End With
เป็น

Code: Select all

With Worksheets("Sheet1")
    Set ra = .Range("C4", .Range("F65536").End(xlUp).Offset(0, 1))
End With
จาก

Code: Select all

For Each r In ra
    Set imgIcon = ActiveSheet.Shapes.AddPicture( _
    Filename:="D:\" & r.Offset(0, -1).Value & ".jpg", LinkToFile:=False, _
    SaveWithDocument:=True, Left:=r.Left, Top:=r.Top, _
    Width:=r.Width, Height:=r.Height)
Next r
เป็น

Code: Select all

For Each r In ra
    Set imgIcon = ActiveSheet.Shapes.AddPicture( _
    Filename:="C:\Documents and Settings\supitsara.p\My Documents\My Pictures\" & r.Offset(0, -1).Value & ".jpg", LinkToFile:=False, _
    SaveWithDocument:=True, Left:=r.Left, Top:=r.Top, _
    Width:=r.Width, Height:=r.Height)
Next r

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Mon Jun 06, 2011 1:42 pm
by widtara
อยากให้แสดงภาพที่ c4
ใส code ที่บอกแล้วจะต้องทำยังงัยให้ภาพแสดงค่ะ

ไฟล์จำเป็นต้องเป็น.xlsm ไหมค่ะ
หรือว่าเป็นไฟล์ .xls หรือ .xlsx จะได้ไหมค่ะ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Mon Jun 06, 2011 1:43 pm
by widtara
เพิ่มไฟล์ update ค่ะ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Mon Jun 06, 2011 2:05 pm
by snasui
:D
widtara wrote:อยากให้แสดงภาพที่ c4
ใส code ที่บอกแล้วจะต้องทำยังงัยให้ภาพแสดงค่ะ

ไฟล์จำเป็นต้องเป็น.xlsm ไหมค่ะ
หรือว่าเป็นไฟล์ .xls หรือ .xlsx จะได้ไหมค่ะ
ในไฟล์แนบที่ส่งมาล่าสุด ใส่ Code มาแล้วแต่ไม่ครบครับ Code ที่แนบมานั้นไม่สามารถ Run ได้ ให้ดู Code ทั้งหมดจากจากที่ผมตอบไว้ด้านบนหรือในไฟล์เก่าว่ามี Code อะไรบ้าง และปรับ Code ตามที่ผมบอกไปในความเห็นก่อนหน้า นามสกุลไฟล์ต้องเป็น .xlsm หรือ .xls และต้องไม่เป็น .xlsx ครับ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Sun Nov 20, 2011 3:01 am
by anocha2522
รบกวนอาจารย์คับ ถ้าเปลี่ยนที่เก็บภาพอยู่ folder ชื่อ pic ตัองแก้ตรงไหนคับ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Sun Nov 20, 2011 5:56 am
by snasui
:D งดใช้ภาษาแชท (คำว่าคับ) ในฟอรัม สำหรับที่ถามมานั้น ดูวิธีการเปลี่ยนจากความเห็นนี้ครับ :ard:
snasui wrote: :D ไฟล์ที่ส่งมานี้เปลี่ยนตำแหน่งเซลล์ที่แสดงภาพ จึงต้องแก้ไข Code VBA ด้วยครับ

จาก

Code: Select all

For Each r In ra
    Set imgIcon = ActiveSheet.Shapes.AddPicture( _
    Filename:="D:\" & r.Offset(0, -1).Value & ".jpg", LinkToFile:=False, _
    SaveWithDocument:=True, Left:=r.Left, Top:=r.Top, _
    Width:=r.Width, Height:=r.Height)
Next r
เป็น

Code: Select all

For Each r In ra
    Set imgIcon = ActiveSheet.Shapes.AddPicture( _
    Filename:="C:\Documents and Settings\supitsara.p\My Documents\My Pictures\" & r.Offset(0, -1).Value & ".jpg", LinkToFile:=False, _
    SaveWithDocument:=True, Left:=r.Left, Top:=r.Top, _
    Width:=r.Width, Height:=r.Height)
Next r

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Mon Nov 21, 2011 12:01 pm
by patpuii
สวัสดีคะ
ในการแสดงรูป ตามชื่อที่กำหนด เราสามารถทำโดยเขียนสูตรธรรมดาได้ไหมคะ
คือไม่ใช้สูตร VBA นะคะ
เช่น เราดึงข้อมูลบุคคลที่ มีชื่อเหมือนกันมา ข้อมูลก็จะดึงมา แล้วแสดงรูปของทุกคนนะคะ
:oops:

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Tue Nov 22, 2011 9:31 pm
by snasui
:D เขียนด้วยสูตรธรรมดาดูแล้วเป็นเรื่องยากที่จะนำรูปมาแสดงได้เป็นชุด ๆ ครับ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Wed Nov 23, 2011 9:39 am
by patpuii
คะ
ขอบคุณมากคะ
ปุ๊ย :geek:

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Sat Apr 14, 2012 1:23 pm
by sutham
รบกวนถาม อ. ต่อนิดนึงครับ ว่าถ้าหากเราจะใส่รูปในเซลล์ที่เราผสานจะแก้ไขในโค๊ดอย่างไรครับ เช่น เรา ผสานเซล์ A1:A3 ครับ

Re: อยากให้ แสดงรูป ตามชื่อที่กำหนดได้มัยครับ....

Posted: Sun Apr 15, 2012 1:28 pm
by snasui
:D แนบไฟล์ที่เขียนแล้วยังติดปัญหามาด้วยครับ จะได้ช่วยทดสอบ ปกติการอ้างถึงเซลล์แรกของเซลล์ที่ Merge ตามตัวอย่างเซลล์ที่ถามมา จะอ้างตามด้านล่างครับ

Code: Select all

Range("A1:A3").Range("A1")