2016-11-14 6 views
-1

나는 루프가 For 이하입니다. 보시다시피, 특정 파일이 열려 있으면 닫으려고합니다.변경 사항을 저장하지 않고 개체 닫기

아래의 설정은 파일 저장 여부를 묻습니다. 파일을 저장하지 않고 어떻게 닫을 수 있습니까?

내가 설정을 시도했습니다 DisplayAlertsFalse뿐만 아니라에 ObjDoc.close False

내가 점점 오전 오류는 'Let 속성 절차가 정의되어 있지 및 속성 가져 오기 절차는 객체 반환하지 않았습니다'

Sub MacroExample() 
' Define local variables 
Dim objVisio 
Dim objDoc 
Dim blnVisioCreated 

' Initialize Vision application reference variable 
Set objVisio = Nothing 

' Assume Visio is already running, then try and get a reference to it 
blnVisioCreated = False 
On Error Resume Next 
Set objVisio = GetObject(, "Visio.Application") 
On Error GoTo 0 

' If Visio was not running already load it and remember that we created it 
If objVisio Is Nothing Then 
    Set objVisio = CreateObject("Visio.InvisibleApp") 
    blnVisioCreated = True 
End If 

' See if out drawing is already open, if so close it 
For Each objDoc In objVisio.Documents 
    If objDoc.Name = "Drawing1.vsd" Then 
    'objVisio.DisplayAlerts = False 
     objDoc.alertrespons = 0 
    objDoc.Close False 
    Exit For 
    End If 
Next 
+0

최저하기 전에이 줄을 사용했습니다. –

+0

[documentation] (https://msdn.microsoft.com/en-us/library/office/ff767415.aspx)에서 : "AlertResponse 속성을 사용하여 경고가 나타나지 않도록 할 수 있습니다." – Comintern

+0

@Comintern alertresponse는 'object does not support'오류를 표시합니다. 또한 문서별로 알 림을 억제하는 정수가 없습니다. (디스플레이 경고가 0입니다) – Dingo

답변

0

감사입니다 모든!

나는 당신이 당신이 설명하는 오류를보고, 그것을 유발하는 라인을 표시 할 때 사용하는 정확한 코드를 보여 닫는 라인

objVisio.AlertResponse = vbNo 
objDoc.Close