• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:<EXCEL/VBA> OUTLOOKのウインドを閉じる方法)

<EXCEL/VBA> OUTLOOKのウインドを閉じる方法

このQ&Aのポイント
  • EXCEL/VBAでOUTLOOKのウインドを閉じる方法を教えてください
  • VBAで開いたウインドのみを閉じたいがうまく行かない
  • oApp.Quitでは元々立ち上げていたoutlookも終了してしまう

質問者が選んだベストアンサー

  • ベストアンサー
  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.2

><EXCEL/VBA> ですよね。 1)VBE(Visual Basic Editor) の コードウィンドウ で [oApp] の部分を [右クリック] - [ウォッチ式の追加(A)] します。  コード の進行に応じて、何某(なにがし)か、Outlook の『ウィンドウ に関する プロパティ』に変化が生じはしないだろうか、と考えた訳です。 2)[F8] キー を押下しながら、ステップ イン デバッグ します。  「myFolder.Display '表示」の行まで来たら、ウォッチウィンドウ で [oApp] の前の「+」を クリック し、配下の プロパティ 等を一つずつ見ていきます。 3)この場合、闇雲に全部開いても、物によっては無数の星の中から探すようなことになってしまいますので、表示された「名前」を見て、(1)に書きました『ウィンドウ に関する プロパティ』に関連ありそうな「名前」だけを、「どこにあるかなぁ」と想像しながら一つずつ開いていきます。  英語の センス も必要でしょうかね。 4)ちなみに、 [oApp] の直下には [AnswerWizard]・[Applicaion]・[Assistant]・・・と15個の「名前」が並んでいますね。  ここで、幸いにも2番目の [Applicaion] を開くと、その直下に [Explorers] という「名前」があるではありませんか!  これ、臭そうです。  (^0^)/ 5)ということで、[oApp] - [Applicaion] - [Explorers] を開いてみますと...  ありました! 6)[oApp] - [Applicaion] - [Explorers] - [Count] が開いている Outlook の数と合致しています。 7)[Item 1]・[Item 2]・[Item 3]・・・  これですよ、これ! 8)これから先は、少々、経験と勘を要しますが。。。  恐らく、今、開いた Outlook が、一番最後の Item、つまり oApp.explorers.Count 番目の Item になるはずです。 9)従って、 oApp.explorers.Item(oApp.explorers.Count) で、その『ウィンドウ』を名指しにできるのではないかなと考えました。 10)ご質問には、 >oApp.Quit と書いていらっしゃいますが、 oApp.explorers.Item(oApp.explorers.Count).Quit は、見るからにおかしいですし、実際、エラー になります。 11)それなら [Close] だろうと思って、 oApp.explorers.Item(oApp.explorers.Count).Close とした次第です。 12)ですから、 >いける「みたい」です。 と書いたのでした。  (^凹^)  とまぁ、ざっと、こんな感じですが、 >自分でも色々と試してみましたが、 >このコードは自分でいくら考えても分からないでしょうね。  そうですね。  材料無しでは考えつきませんし、実際「まぐれ」みたいなものです。 >何処で勉強されたのでしょうか。 >OutlookのVBAのhelpでしょうか  キーポイント は [ステップ イン デバッグ] と [ウォッチ ウィンドウ] です。  WEB検索 しても、なかなか見付からないときは、こうやって、地道に探すしか手がありませんものね。

pegasusv
質問者

お礼

再度のご回答有難うございました。 [ステップ イン デバッグ] と [ウォッチ ウィンドウ] について、理解できました。 また、とても丁寧に説明して頂き、本当に有難うございました。

その他の回答 (1)

  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.1

oApp.explorers.Item(oApp.explorers.Count).Close でいけるみたいです。

pegasusv
質問者

お礼

ご回答の通りで、出来ました。 素晴らしいです。 自分でも色々と試してみましたが、このコードは自分でいくら考えても分からないでしょうね。 何処で勉強されたのでしょうか。 OutlookのVBAのhelpでしょうか、もし良ければ教えて下さい。 ご回答有難うございました。

関連するQ&A

専門家に質問してみよう