Sashagor1982, вот макрос.
[vba]Код
Public PathList() As String 'Массив с путями к файлам
Public ImageNumber As Long 'Число фоток
Sub FotoFind()
Dim i As Long
MsgBox prompt:="Выделите файлы с фотографиями"
With Application.FileDialog(msoFileDialogOpen)
.AllowMultiSelect = True 'Даём возможность выбрать много файлов
.Show 'Открываем форму открытия файлов
ImageNumber = 0 'Счётчик фоток
On Error Resume Next
ReDim PathList(1 To .SelectedItems.Count) 'Выделяем память под динамический массив
If Err.Number <> 0 Then Exit Sub 'Если ничего не выбрано, выйти
For i = 1 To .SelectedItems.Count
If Right(.SelectedItems(i), 3) = "jpg" Then 'Проверяем, является ли файл картинкой
ImageNumber = ImageNumber + 1 'Если это фотка, увеличиваем счётчик
PathList(ImageNumber) = .SelectedItems(i) '... и пишем адрес в массив
End If
Next i
End With
Select Case ImageNumber
Case 0
MsgBox prompt:="В ваших файлах фотографий нет"
Case Else
MsgBox prompt:="Найдено " & ImageNumber & " фотографий"
End Select
End Sub
[/vba]
Он просит Вас открыть файлы с фотками (можно сразу много), считает их и засовывает пути к ним в массив. Далее просто крутите в цикле от 1 до ImageNumber макрос для вставки, который Вам уже написали.