Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 07-18-2019, 08:47 AM
Dzib Dzib is offline Macro to insert images in a document Windows 10 Macro to insert images in a document Office 2019
Novice
Macro to insert images in a document
 
Join Date: Jul 2019
Posts: 29
Dzib is on a distinguished road
Default Macro to insert images in a document

Hi,


I've found this macro that works fine to insert a whole folder of images in a word document. The only problem is that the images are inserted in a random order. Any idea how to insert them in alphabetical order?




Code:
Sub InsertSpecificNumberOfPictureForEachPage()
    Dim StrFolder As String
    Dim strFile As String
    Dim objDoc As Document
    Dim dlgFile As FileDialog
    Dim objInlineShape As InlineShape
    Dim nResponse As Integer
    Dim strPictureNumber As Integer
    Dim strPictureSize As String
    Dim n As Integer  
   
    Set dlgFile = Application.FileDialog(msoFileDialogFolderPicker)
    
    With dlgFile
      If .Show = -1 Then
        StrFolder = .SelectedItems(1) & "\"
      Else
        MsgBox ("No Folder is selected!")
        Exit Sub
      End If
    End With
   
    strFile = Dir(StrFolder & "*.*", vbNormal)
    strPictureNumber = InputBox("Input the number of the picture for each page", "Picture Number", "For exemple: 1")
    n = 1  
   
    While strFile <> ""
      Selection.InlineShapes.AddPicture FileName:=StrFolder & strFile, LinkToFile:=False, SaveWithDocument:=True
      Selection.TypeParagraph
      Selection.Collapse Direction:=wdCollapsEnd
      Selection.TypeText Text:=Left(strFile, InStrRev(strFile, ".") - 1)
      Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
      If ActiveDocument.InlineShapes.Count = strPictureNumber * n Then
        Selection.InsertNewPage
        Selection.TypeBackspace
        n = n + 1
      End If
      Selection.TypeParagraph
      strFile = Dir()
    Wend
   
    For Each objInlineShape In ActiveDocument.InlineShapes
      objInlineShape.Select
      Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
    Next objInlineShape
   
    nResponse = MsgBox("Do you want to resize all pictures?", 4, "Resize Picture")
    If nResponse = 6 Then
      strPictureSize = InputBox("Input the height and width of the picture, seperated by comma", "Height and Width", "For exemple:500,500")
      For Each objInlineShape In ActiveDocument.InlineShapes
        objInlineShape.Height = Split(strPictureSize, ",")(0)
        objInlineShape.Width = Split(strPictureSize, ",")(1)
      Next objInlineShape
    End If
  End Sub
Reply With Quote
 



Similar Threads
Thread Thread Starter Forum Replies Last Post
macro: insert muliple images and resize into given cells marco83 Excel Programming 1 08-15-2018 09:16 AM
Macro to insert images in a document Insert multiple images into Word document from smartphone james1979uk Drawing and Graphics 1 06-06-2018 01:12 AM
Macro to insert images in a document Insert pictures in yahoo images into a Word document nasserlouis Word VBA 3 08-20-2017 02:06 PM
Macro to insert images in a document Insert multiple images & controls into a document vanwijnen Word VBA 1 06-05-2015 06:16 AM
Macro to insert images in a document Macro to create tables around all images in document lsmcal1984 Word VBA 4 12-01-2013 06:58 PM

Other Forums: Access Forums

All times are GMT -7. The time now is 01:35 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Search Engine Optimisation provided by DragonByte SEO (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
MSOfficeForums.com is not affiliated with Microsoft