fumei,
Sorry, I didn't intentionally ignore your previous post. I've been trying to piece together many moving parts.

I tried to change to the recommended save/close code, but it give me an error on the saveas line. I commented out my savedialog method while I try to change over. I will post my entire code (hope not to confuse). There is alot of back and forth to excel collecting data for form fields and writing data back to excel for use in future documents.

The trick is to close document 1, open document 2and prefill doc 2 from excel before the user does anything on doc 2.

Any suggestions on what I'm missing is greatly appreciated.

[VBA]Private Sub cmdCloseSave_Click()
Dim fldCount As Integer
Dim missString As String
Dim dataCount As Integer
Dim xlApp As Object
Dim wdApp As Object
Dim pathString As String
Dim docString As String
Dim clinameString As String
Dim catnameString As String
Dim saveString As String
Dim g As Integer
Dim npathString As String
Dim ndotString As String
Dim nopenString As String
'Set document row number for document after PIN Approval
g = 3

'Determine if any form fields are empty
missString = ""
For fldCount = 1 To ActiveDocument.FormFields.Count
If Len(ActiveDocument.FormFields(fldCount).Result) = 0 Then
missString = missString & " " & ActiveDocument.FormFields(fldCount).Name & ","
End If
Next fldCount
'If empty, provide message and end
If Len(missString) > 0 Then
missString = Left(missString, Len(missString) - 1)
MsgBox ("You must Complete All Fields. Return to " & missString & ". Then click again.")
Exit Sub
End If
'Add Data to Pin_Index
Set wdApp = GetObject(, "Word.Application")
tempName = ActiveDocument.Name

For dataCount = 1 To ActiveDocument.FormFields.Count
wdResult = ActiveDocument.FormFields(dataCount).Result
Set xlApp = GetObject(, "Excel.Application")
xlApp.Visible = True
xlApp.Workbooks("MasterIndex.xls").Activate
xlApp.Workbooks("MasterIndex.xls").Sheets("Pin_Index").Cells(2, dataCount).Value = wdResult
Next dataCount
'Add Document value to Excel
Set xlApp = GetObject(, "Excel.Application")
xlApp.Visible = True
xlApp.Workbooks("MasterIndex.xls").Activate
xlApp.Workbooks("MasterIndex.xls").Sheets("Pin_Index").Cells(2, 7).Value = g
'Create File Save path and name
pathString = xlApp.Workbooks("MasterIndex.xls").Sheets("Doc_Index").Range("C2")
docString = xlApp.Workbooks("MasterIndex.xls").Sheets("Doc_Index").Range("E2")
clinameString = xlApp.Workbooks("MasterIndex.xls").Sheets("Pin_Index").Range("B2")
catnameString = xlApp.Workbooks("MasterIndex.xls").Sheets("Pin_Index").Range("F2")
saveString = pathString & catnameString & "\" & clinameString & "_" & docString

' FileSave
' Saves the active document or template

'Dim UserSaveDialog As Dialog
'Set UserSaveDialog = Dialogs(wdDialogFileSaveAs)
'With UserSaveDialog
' .Name = saveString
' UserSaveDialog.Execute
'End With
With wdApp
.SaveAs FileName:=saveString
.Close
End With
MsgBox ("File has been saved to: " & saveString & " Please continue.")
Set wdApp = Nothing
'Open next document row 3
npathString = xlApp.Workbooks("MasterIndex.xls").Sheets("Doc_Index").Range("B3")
ndotString = xlApp.Workbooks("MasterIndex.xls").Sheets("Doc_Index").Range("D3")
nopenString = npathString & ndotString
'Open Word Instance
' Set wdApp = CreateObject("Word.Application")
' wdApp.Visible = True

'Open Template as Document
wdApp.Documents.Add Template:=(nopenString)
wdApp.Activate
'Prefill Data - field names and values from excel
Dim nameFLD As String
Dim pinFLD As String
Dim rnFLD As String
Dim rnpinFLD As String
nameFLD = xlApp.Workbooks("MasterIndex.xls").Sheets("Doc_Index").Range("M3")
pinFLD = xlApp.Workbooks("MasterIndex.xls").Sheets("Doc_Index").Range("N3")
rnFLD = xlApp.Workbooks("MasterIndex.xls").Sheets("Doc_Index").Range("O3")
rnpinFLD = xlApp.Workbooks("MasterIndex.xls").Sheets("Doc_Index").Range("P3")
With wdApp.ActiveDocument
If Len(nameFLD) > 0 Then
.FormFields(nameFLD).Result = xlApp.Workbooks("MasterIndex.xls").Sheets("Pin_Index").Range("B2")
End If
If Len(pinFLD) > 0 Then
.FormFields(pinFLD).Result = xlApp.Workbooks("MasterIndex.xls").Sheets("Pin_Index").Range("C2")
End If
If Len(rnFLD) > 0 Then
.FormFields(rnFLD).Result = xlApp.Workbooks("MasterIndex.xls").Sheets("Pin_Index").Range("D2")
End If
If Len(rnpinFLD) > 0 Then
.FormFields(rnpinFLD).Result = xlApp.Workbooks("MasterIndex.xls").Sheets("Pin_Index").Range("E2")
End If
End With

'Close document wdApp.Documents.Open(saveString).Close
'wdApp.Documents.Open(saveString).Close

End Sub
[/VBA]