2012-05-06 12 views
0

"E"キーストロークを送る代わりに、PowerPoint 2003/2007/2010でスライド上でユーザーのペン描画と注釈をプログラムで消去します。PowerPointのペンの描画と注釈を消去する

SlideShowView.EraseDrawingは、SlideShowView.DrawLineの行だけを消去しています。

サンプルコード:あなたの答えのための

PowerPoint.Application.ActivePresentation.SlideShowSettings.Run.View.EraseDrawing

ありがとう! rjobidon

答えて

0

あなたがスライドショーを停止して図面を保持することを選択した後にペン描画を削除したいですか?その場合は、図面を消去したいスライドの下のEraseInkOnSlide関数を呼び出します。

Sub TestMe() 
    EraseInkOnSlide ActivePresentation.Slides(1) 
End Sub 

Sub EraseInkOnSlide(oSl As Slide) 
' Erases any INK shapes drawn by the user and 
' retained when the user quits the slide show 
    Dim oSh As Shape 
    Dim x As Long 
    With oSl.Shapes 
    For x = .Count To 1 Step -1 
     If .Item(x).Type = 23 Then 
      .Item(x).Delete 
     End If 
    Next 
    End With 
End Sub 

は、私はあなたが一瞬その後、スライドショーモードで動作するようにこれを取得するために、slideshwoモードで現在のスライドに戻るスライドショーモードから脱落するHVEと思います疑います。 PPTは、ユーザーがショーを終了してシェイプを保持することになるまで、スライドのシェイプコレクションのインクシェイプの一部を考慮していないようです。奇妙な。

+0

お返事ありがとうございました!はい、スライドモードや終了スライドショーを変更する前に、ライブモードでペン描画を消去します。 – rjobidon

0

これは、ユーザーにインクの保存または削除のオプションを与え、スライドショービューで元のスライドに戻ります。あなたが何をしているのかはまだ分かりませんが、これまでと同じくらい近いです。

Private Sub CommandButton1_Click() 
    Dim x As Long 
    x = SlideShowWindows(1).View.Slide.SlideIndex 

    With SlideShowWindows(1) 
     .View.Exit 
    End With 

    With ActivePresentation 
     .SlideShowSettings.Run 
    End With 

    SlideShowWindows(1).View.GotoSlide (x) 

End Sub 
関連する問題