2010-07-27 6 views
5

약 50 개의 슬라이드가 포함 된 PowerPoint가 있습니다. 각 슬라이드에는 reviwer에서 제공하는 하나 이상의 주석이있을 수 있습니다 (삽입 -> 주석 메뉴를 사용하여 수행). 내가 프로그래밍 방식이 VBA 코드를 사용하여 텍스트 파일로 내 보낸 코멘트를 얻기 위해 노력하고VBA를 사용하여 PowerPoint 프레젠테이션에서 주석 추출

: 위의 코드에서

Sub ConvertComments() 
    ''# Converts new-style comments to old 

     Dim oSl As Slide 
     Dim oSlides As Slides 
     Dim oCom As Comment 

     Set oSlides = ActivePresentation.Slides 
     For Each oSl In oSlides 
      For Each oCom In oSl.Comments 
       ''# write the text to file : (oCom.Text) 
       WriteToATextFile oCom.Author, <what needs to come here>, oCom.Text 
      Next oCom 
     Next oSl 
End Sub 

, 나는 텍스트 파일에 기록 될뿐만 아니라 주석 컨텍스트를 제공해야 (슬라이드의 어느 선을 선택하고 주석을 달았습니까?)

질문 :이 정보를 얻기 위해 사용할 수있는 속성이 있습니까? 이처럼

+0

"의견 컨텍스트"는 무엇을 의미합니까? 문제는 VBA에서 텍스트 파일에 쓰는 방법이거나 "주석 컨텍스트"에 관한 것입니다. 이 코드가 어떻게 도움이된다면 텍스트 파일을 작성하는 코드를 제공 할 수 있습니다. 그리고 "주석 컨텍스트"를 명확히하면이 코드도 함께 사용하게 될 것입니다. – hol

+0

나는 다음과 같이 주석 컨텍스트를 의미했습니다 : ppt에 텍스트 줄이 있다고 가정합니다. reviwer가 그것을 선택하고 삽입 -> 주석 메뉴를 클릭합니다. – balalakshmi

답변

4

:

Sub ConvertComments() 
''# Converts new-style comments to old 

    Dim oSl As Slide 
    Dim oSlides As Slides 
    Dim oCom As Comment 
    Dim oShape As Shape 


    Open "filename.txt" For Output As 1 
    Set oSlides = ActivePresentation.Slides 

    Dim myContext As String 
    For Each oSl In oSlides 
     For Each oCom In oSl.Comments 
      myContext = "" 
      For ShapeIndex = oCom.Parent.Shapes.Count To 1 Step -1 
       myContext = myContext & oCom.Parent.Shapes(ShapeIndex).AlternativeText & " " 
      Next 
      Write #1, oCom.Author & ";" & myContext & ";" & oCom.Text 
     Next oCom 
    Next oSl 
    Close 1 
End Sub 

주요 부분은 주석에 대한 모든 형태의 부모 통해 루프에 관한 것입니다.

+0

에 선택되고 주석 처리 된 줄을 가져와야합니다. 일했다! 감사합니다. – balalakshmi

+0

슬라이드 번호를 가져 오는 방법은 없나요? – Alex

+0

@hol :이 솔루션을 사용해 보았습니다. 동일한 슬라이드의 답장 주석을 식별하지 못하는 코드 조각을 발견했습니다. 답장 코멘트도 얻을 수 있도록 도와 주시겠습니까? –

관련 문제