Thread: [Solved] Word macro question
View Single Post
 
Old 08-28-2015, 08:14 PM
Guessed's Avatar
Guessed Guessed is offline Windows 7 32bit Office 2010 32bit
Expert
 
Join Date: Mar 2010
Location: Canberra/Melbourne Australia
Posts: 4,164
Guessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant future
Default

I assume the Dialogs line was meant to prompt for a folder where the RTFs were going to be found. This is not happening with your code so I've changed that part.

The error you were encountering was due to the fact that you were trying to overwrite the currently open document. This code below saves it with a changed suffix so the error is avoided.
Code:
Sub RTFtoDOC()
  Dim FName As String, fldr As FileDialog, sItem As String
  Dim sNewName As String
  Set fldr = Application.FileDialog(msoFileDialogFolderPicker)
  With fldr
    .Title = "Select a Folder"
    .AllowMultiSelect = False
    .InitialFileName = strPath
    .Show
    sItem = .SelectedItems(1) & Application.PathSeparator
  End With

  FName = Dir(sItem & "*.rtf")
  While (FName > "")
    Application.Documents.Open FileName:=sItem & FName, ReadOnly:=True, AddToRecentFiles:=False
    sNewName = Split(FName, ".")(0)
    ActiveDocument.SaveAs FileName:=sItem & sNewName, FileFormat:=wdFormatDocument
    ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges
    FName = Dir()
  Wend
End Sub
__________________
Andrew Lockton
Chrysalis Design, Melbourne Australia
Reply With Quote