Please test my macro for repair Visio Error #318
[code]Sub vsd_RepairError318()
Dim cl As Row
Dim n As Integer
n = 0
Dim row_name$, row_value$, row_prompt$, new_prompt$, bl As Boolean
For i = ActiveWindow.Shape.RowCount(242) - 1 To 0 Step -1
row_name = Application.ActiveWindow.Shape.CellsSRC(visSectionUser, i, visUserValue).RowNameU
row_value = Application.ActiveWindow.Shape.CellsSRC(visSectionUser, i, visUserValue).FormulaU
row_prompt = Application.ActiveWindow.Shape.CellsSRC(visSectionUser, i, visUserPrompt).FormulaU
bl = InStr(row_value, Trim("Pages["))
If bl = True Then '
n = n + 1
If n = 1 Then new_prompt = "setf(getref(user." & row_name & "), " & row_value & ")"
If n > 1 Then new_prompt = new_prompt & "+setf(getref(user." & row_name & "), " & row_value & ")"
Else
End If
Next
ActiveDocument.DocumentSheet.AddNamedRow visSectionUser, "Err318fix", visTagDefault
ActiveDocument.DocumentSheet.Cells("User.Err318fix.prompt").FormulaU = new_prompt
Application.ActiveWindow.Shape.DeleteRow visSectionUser, ActiveWindow.Shape.RowCount(242) - 1
End Sub[/code]
Wait for yours advices