2011-12-30 2 views
1

다음 코드 을 사용하여 모양의 모든 연결 지점을 삭제하려고하지만 일부 연결 지점이 삭제되지 않습니다. 이런 일이Visio에서 모양의 모든 연결 지점을 삭제합니다.

For currentRow = 0 To shape.Section(Visio.VisSectionIndices.visSectionConnectionPts).Count - 1 
     shape.DeleteRow Visio.VisSectionIndices.visSectionConnectionPts, visRowFirst + currentRow 
Next currentRow 

사람은이 부분에 대한 몇 가지 빛을 넣을 수 왜 이해가 안 돼요?

답변

1

루프를 처음 사용할 때 currentRow는 0입니다. 따라서 인덱스 0 인 행을 삭제합니다. 이제 두 번째 행이 첫 번째 행이되고 인덱스가 1에서 0으로 변경됩니다. 루프는 currentRow를 1로 증가 시키므로 건너 뜁니다. 새로운 첫 번째 행. 각 반복마다이 작업이 반복되고 두 번째 행을 건너 뜁니다.

나머지 행이 없어 질 때까지 첫 번째 행을 간단히 삭제할 수 있습니다. 내가 그것을 행 할 때의 새로운 세트로 새 섹션을 추가하는 분석하기 때문에

Shape.DeleteSection Visio.VisSectionIndices.visSectionConnectionPts 
+0

삭제 섹션은 좋은 생각이 아니다 :

While Shape.RowExists(Visio.VisSectionIndices.visSectionConnectionPts, visRowFirst, 0) Shape.DeleteRow Visio.VisSectionIndices.visSectionConnectionPts, visRowFirst Wend 

응용 프로그램에 따라, 가장 간단한 솔루션은 연결 지점 섹션을 삭제할 수 있습니다 전체 섹션 삭제 – 0cool

관련 문제