| Be the first user to complete this post  | Add to List | 
VBA-Excel: Add/Insert multiple Images/Pictures from a folder in Word Document
To Add or Insert Multiple Images or Pictures in Microsoft Word Document using Microsoft Excel, you need to follow the steps below:
- Declare END_OF_STORY and MOVE_SELECTION as variables
- Assign MOVE_SELECTION =0 and END_OF_STORY = 6
- Create the object of Microsoft Word
- Create the object of FileSystemObject
- Create Folder object using FileSystemObject and GetFolder method
- Using MS word object, Open the existing word document by providing the complete path
- Make the MS Word visible
- Create a Selection object with the help of WordObject.
- Access Folder files using Folder object
- Get the image paths from the folder
- Insert image in the word documents using AddPicture()
- Insert a page break after every image
Declare END_OF_STORY and MOVE_SELECTION as variables
Dim END_OF_STORY
Dim MOVE_SELECTION
Assign MOVE_SELECTION =0 and END_OF_STORY = 6
END_OF_STORY = 6
MOVE_SELECTION = 0
Create the object of Microsoft Word
Set objWord = CreateObject(“Word.Application”)
Create the object of FileSystemObject
Set objFSO = CreateObject("Scripting.FileSystemObject")
Create Folder object using FileSystemObject and GetFolder (link) method
Set objFolder = objFSO.GetFolder(strFolderPath)
Using MS word object, open the existing word document by providing the complete path
Set objDoc = objWord.Documents.Open("D:\OpenMe.docx")
Make the MS Word Visible
objWord.Visible = True
Create a Selection object with the help of WordObject.
Set objSelection = objWord.Selection
Access Folder files using Folder object
objFolder.Files
Get the image paths from the folder
ImgPath = Img.Path
Insert image in the word documents using AddPicture()
objSelection.InlineShapes.AddPicture (ImgPath)
Insert a page break after every image
objSelection.insertbreak
Complete Code:
Function FnInsertMultipleImages(strFolderPath)
   Dim objWord
   Dim objDoc
   Dim objSelection
   Dim objShapes
   Dim objFSO
   Dim objFolder
   Set objWord = CreateObject("Word.Application")
   Set objFSO = CreateObject("Scripting.FileSystemObject")    
   Set objFolder = objFSO.GetFolder(strFolderPath)
   Set objDoc = objWord.Documents.Open("D:\OpenMe.docx")
   objWord.Visible = True
   Set objSelection = objWord.Selection
   For Each Img In objFolder.Files
     ImgPath = Img.Path
        objSelection.InlineShapes.AddPicture (ImgPath)
 objSelection.insertbreak
   Next
End Function

Also Read:
- VBA-Excel: Update XML File
- VBA-Excel: Create and Save the Word document
- VBA-Excel: Enumerate all the opened word document
- VBA-Excel: Appending Text to an Existing Word Document - at the End
- VBA-Excel: Add/Insert a Image/Picture in Word Document
 
    