【VB.NET】 パワポ操作を非表示で
質問させていただきます.
どうぞよろしくお願いいたします.
PowerPointの操作をするコードを作成して使っております.
毎回立ち上がるパワポのウィンドウを非表示にしたいのですが,
myAPP.Visible = True状態でないと,presentations.Openでエラーが出てしまいます.
Dim myAPP As Object
myAPP = CreateObject("PowerPoint.Application")
Dim myAPPpre = myAPP.presentations
Dim Mypath As String = TextBoxパス.Text
Dim FName As String
myAPP.Visible = True
FName = Dir(Mypath & "test.ppt", vbNormal)
With myAPPpre.Open(Mypath & FName) '←上のmyAPP.Visible = Trueを消すとエラー
'「Presentations.Open : 無効な要求です。PowerPoint のフレーム ウィンドウは存在しません。」となります.
どうにか見えない状態で実行できないものでしょうか.
調べておりますと,同じ現象がよくあるようでした.
(http://www.kotaete-net.net/Default.aspx?pgid=14& …
http://www.microsoft.com/japan/technet/scriptcen … のページ中間あたり「さいわい、Visible プロパティを True に設定することによって~」のところ.)
もし何か方法が分かるかたがいらっしゃいましたら,
アドバイスいただければと思います.
どうぞよろしくお願いいたします.
回答(2件)
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示
No.2ベストアンサー10pt
myAPP.Top = 600 など画面外にしておいて
あとで戻しておくのだと簡単ですが。
使う人が途中で終了させたときにも
元に戻すようにしておく必要があります。
(VBを使っていないので・・・です。)
この回答へのお礼
どうもありがとうございます!!
画面ぎりぎりまで行く設定でやってみましたが,
テクが至らず元に戻せない時がありました.
家族で使用するPCなので,今回はYune-Kichi様の方法でいきます.
アドバイスどうもありがとうございました.
No.1ベストアンサー20pt
Openの引数WithWindowの既定値はmsoTrueですから,そうなるでしょう。
WithWindowにMsoTriState.msoFalseを渡してやればよいです。
この回答へのお礼
どうもありがとうございます!
アドバイス通りやってうまくいきました.
はじめ,Importするとエラーだらけになったので,
With myAPPpres.Open(Mypath & FName, WithWindow:=Microsoft.Office.Core.MsoTriState.msoFalse)
でできました.
ただActivePresentationエラーの修正と合わせて
3時間かかりました..orz
本当にどうもありがとうございました!
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示












