2017-10-02 1 views
1

PowerPoint VBA에 처음 익숙해졌습니다. 기본 검색을 수행하는 상용구 코드였습니다. 찾기 & 슬라이드 쇼 전체 (이 경우 처음 5 개의 슬라이드)에서 바꿉니다. 그러나 Run-time error 13 - Type mismatchFor Each shp In sld.Shapes에 있는데 그 이유를 알 수 없습니다. 어떤 통찰력?유형이 일치하지 않아 Powerpoint VBA에서 찾기 + 바꾸기

Dim sld As Slide, shp As Shape, i As Long 

For i = 1 To 5 
    Set sld = PPT.ActivePresentation.Slides(i) 
     For Each shp In sld.Shapes '<- Error here 
      If shp.HasTextFrame Then 
       If shp.TextFrame.HasText Then 
        shp.TextFrame.TextRange.Text = Replace(shp.TextFrame.TextRange.Text, "LastMonth", "September") 
       End If 
      End If 
     Next shp 
Next i 

답변

2

엑셀 Shape는 파워 포인트 Shape과 동일하지 않습니다 : 당신은 파워 포인트 라이브러리를 사용하여 선언을 한정해야합니다. 당신이 shp` 변수는`Excel.Shape (클래스)`말한다 '것을 선택했을 때 ... 나는 ... 알고 있었어한다 frusturating에 대한

Dim shp as PowerPoint.Shape 
+0

토크는 RD와 감사에게, – dwirony

+0

@dwirony을 전환하고 고정 RD 도구 모음 =) –

+0

@ Mat'sMug 내 IT 컴퓨터에 내 작업 컴퓨터에서 허용하도록 설득하려고합니다. :) – dwirony

관련 문제