ซ่อมคอมพิวเตอร์นอกสถานที่ บางกะปิ รามคำแหง

วันพุธที่ 18 กรกฎาคม พ.ศ. 2555

Microsoft Excel Tips and Tricks: การดึงรูปจาก Folder ที่ต้องการมาแสดงใน Excel

สำหรับการดึงรูปจาก Folder ที่เก็บในเครื่องมาแสดงใน Excel โดยปรับภาพให้พอดีกับขนาดเซลล์ด้วยเสมอนั้นจำเป็นต้องใช้ VBA มาช่วยเพื่อการกระทำดังกล่าวครับ ซึ่งการดึงภาพจาก Folder ในเครื่องมาแสดงแทนการเก็บภาพไว้ในตาราง Excel แล้วค่อยใช้สูตรดึงภาพมาแสดงนั้นจะช่วยให้ลดขนาดไฟล์ได้มาก เนื่องจากไฟล์ภาพมักจะมีขนาดใหญ่ หากเก็บภาพไว้ในตาราง Excel มาก ๆ จะทำให้ไฟล์มีขนาดใหญ่ขึ้นมาก นอกจากนี้จะให้ไฟล์ Excel ทำงานช้าลงมากตามไปด้วย

ตามภาพด้านล่างจะเป็นการดึงภาพที่เก็บไว้ใน Drive D: มาแสดงตามชื่อที่ไห้ไว้ล่วงหน้า ซึ่งสามารถที่จะระบุชื่อภาพไว้ในเซลล์ตั้งแต่ F4 เป็นต้นไปตามความต้องการ เมื่อคลิกปุ่ม Show Picture ภาพก็จะมาแสดงในคอลัมน์ G ตรงกับชื่อที่ให้ไว้
ภาพแสดงการดึงรูปจาก Folder ที่ต้องการมาแสดงใน Excel
RetreivePic
 ซึ่งสามารถใช้ Code VBA ตามด้านล่าง
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

0 ความคิดเห็น:

แสดงความคิดเห็น