Надеюсь, этот код поможет!
Sub Macro1()
Dim fso As Object, m_fld As Object, fld As Object, vd As Object, mf As String
Dim pdfn As String
Set fso = CreateObject("Scripting.FileSystemObject")
mf = InputBox("Path")
Set m_fld = fso.getfolder(mf)
For Each fld In m_fld.subfolders
For Each fil In fld.Files
If InStr(fil.Name, ".vsd") > 0 Then fit (fil.Path) ' MsgBox fil.Name
Next
Next
For Each fil In m_fld.Files
If InStr(fil.Name, ".vsd") > 0 Then fit (fil.Path)
Next
End Sub
Sub fit(fn As String)
Dim fd As Document
Set fd = Documents.OpenEx(fn, visOpenRW)
pdfn = Replace(fd.FullName, Right(fd.FullName, Len(fd.FullName) - InStrRev(fd.FullName, ".")), "pdf")
For Each pg In fd.Pages
fd.Application.ActiveWindow.Page = pg.Name
Application.ActiveWindow.ViewFit = visFitPage
Next
fd.ExportAsFixedFormat visFixedFormatPDF, pdfn, visDocExIntentScreen, visPrintAll
fd.Save
fd.Close
End Sub