En general, para hacer cualquier macro, debemos ir al menú de Herramientas, opción Macro, subopción Grabar nueva macro. Nos aparecerá una ventana en la que indicamos que queremos activar la macro con una combinación de teclas del teclado. A continuación indicamos el nombre de la macro y el atajo de teclado, asignamos y cerramos esa ventana.
A partir de ahí, lo que hagamos con el ratón (opciones de menús, etc) que pulsemos, queda grabado como operaciones de la macro.
Al terminar, le damos a "Detener grabación de macro" en la ventanita pequeña que apareció antes. Con eso tendremos la macro terminada. Si ahora vamos al menú de Herramientas, opción Macro, subopción Macros, nos aparece una ventana donde podemos editar las propiedades (y las operaciones) de cierta macro.
En concreto, para la macro que nos ocupa (mostrar el cuadro de diálogo de insertar una imagen desde fichero), el código necesario para la macro es:
Dim PicDlg As Dialog
Dim i As Integer
Dim FName As String
Dim Shape1 As InlineShape
Dim Range1 As Range
Set fs = CreateObject("Scripting.FileSystemObject")
Set PicDlg = Dialogs(wdDialogInsertPicture)
If PicDlg.Display = -1 Then
Set Range1 = Selection.Range
Set Shape1 = ActiveDocument.InlineShapes.AddPicture _
(FileName:=PicDlg.Name, LinkToFile:=False, SaveWithDocument:=True, _
Range:=Range1)
Range1.Collapse Direction:=wdCollapseStart
Range1.Move Unit:=wdCharacter, Count:=1
Range1.Select
FName = fs.GetFileName(PicDlg.Name)
ActiveDocument.Hyperlinks.Add Anchor:=Shape1, Address:=FName, _
SubAddress:=""
End If