2017-07-28 15 views
0

セル値に応じてファイルからExcelに画像を挿入します。 私は、それぞれ異なる名前のファイルに一連の画像を持っています。Excelの画像をvbaのファイルから挿入します

Excelでは、特定の条件に応じて名前のリストが設定された表があります。リストは、絵の名前と同じ単語のグループです。

ピクチャ名がリストに表示されたら、Excelに画像をアップロードする方法はありますか?

ありがとうございます。

+0

テーブルの例を表示できますか? –

+0

私は動物のリストを持つテーブルを持っています: 犬、猫、ヘビ、イグアナ。 フォルダに同じ名前の画像があります。しかし、動物の名前がテーブルの上にある場合にのみ、画像が表示されるようにします。ありがとうございました! – franciscofcosta

答えて

0

この方法を検討してください。

Sub InsertPics() 
Dim fPath As String, fName As String 
Dim r As Range, rng As Range 

Application.ScreenUpdating = False 
fPath = "C:\Users\Public\Pictures\Sample Pictures\" 
Set rng = Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row) 
i = 1 

For Each r In rng 
    fName = Dir(fPath) 
    Do While fName <> "" 
     If fName = r.Value Then 
      With ActiveSheet.Pictures.Insert(fPath & fName) 
       .ShapeRange.LockAspectRatio = msoTrue 
       Set px = .ShapeRange 
       If .ShapeRange.Width > Rows(i).Columns(2).Width Then .ShapeRange.Width = Columns(2).Width 
        With Cells(i, 2) 
         px.Top = .Top 
         px.Left = .Left 
         .RowHeight = px.Height 
        End With 
      End With 
     End If 
     fName = Dir 
    Loop 
    i = i + 1 
Next r 
Application.ScreenUpdating = True 
End Sub 

' Note: you need the file extension, such as ',jpg', or whatever you are using, so you can match on that. 
関連する問題