2014-02-28 3 views
0

커넥터가 실제로 Shape에 연결되어 있는지 확인해야합니다. 즉, EndConnectedShape에 의해 반환 된 Shape가 있는지 확인해야합니다. 지금까지 나는이 문제를 가지고 있지만, 그것은 나에게 오류를 제공합니다 : 권한이 거부 :커넥터에 EndConnectedShape VBA PPT가 있는지 확인

Sub test() 
    Dim oSh, mySh As Shape 
    smth = "SomeName" 

    For Each oSh In ActivePresentation.Slides(1).Shapes 
     If oSh.Connector And oSh.Name = smth Then 
      ' In the NEXT line the following error is returned: 
      ' oSh.ConnectorFormat.EndConnectedShape = <Permission denied> 
      Set mySh = oSh.ConnectorFormat.EndConnectedShape 
      If Not IsEmpty(mySh) Then 
       oSh.ConnectorFormat.EndConnectedShape.Line.ForeColor.RGB = RGB(255, 0, 0) 
      End If 
     End If 
    Next oSh 

End Sub 

매우 간단 뭔가가 있어야합니다,하지만 난 내가 그리워 무엇을 알아낼 수 없습니다. 어떤 제안? 감사!

답변

2
oSh.ConnectorFormat.EndConnected 

은 끝이 뭔가에 연결되어있는 경우를 나타내는 부울 값을 반환합니다 .EndConnectedShape에 액세스하기 전에 그것을 확인을

참고 :는 조사 식 창을 사용하는 방법을 알아 내기 위해 약간의 시간을 보내고 가치 이 같은 디버깅 문제 : 당신은 당신이 오류가 발생하고 탐구 할 가능성이 도로를 찾을 때 다음 조사 식 창에서의 propeties를 검색 할 수 oSh에 시계를 설정하면 ...

enter image description here

+0

다시 한 번 감사드립니다! 나는 진실/거짓 결과가 필요하다는 것을 알았지 만, 내 마음이 너무 닫혀서 EndConnected를 둘러 보지 못했습니다. 감사! 조사 식 창에 관해서는 디버깅 중에도 사용하려고했지만 다시는 올바르지 않게 중간 변수를 사용했지만 개체는 사용하지 않았습니다. 나는 VBA에서 완전한 멍청이이기 때문에 가르쳐 주신 것에 대해 다시 한번 감사드립니다. –