• ベストアンサー

最小化したoutlook元に戻すマクロ

Outlook2007のVBAマクロを使用して、新着メッセージを受信した場合に確認メッセージダイアログを表示させようとしています。 ダイアログのOKボタンを押すと、Outlookが最小化されていた場合は元の状態に戻し、Outlookのウインドウを表示したいのですが、うまくいきません。 どうすれば実現可能でしょうか。よろしくお願いします。

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

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

WindowStateじゃ無くて Activateを使ったらうまく行くのではないでしょうか Private Sub Application_NewMail()   MsgBox "新着メッセージが届きました"   ActiveExplorer.Activate End Sub お試しください

Harusir
質問者

お礼

ありがとうございます。 Activateを使用すれば実現できました。 的確なご回答ありがとうございました。 ちなみに、マクロは次の様な形で落ち着きました。 Private Sub Application_NewMail()   If MsgBox("新着メッセージが届きました", vbMsgBoxSetForeground + vbOKCancel) = vbOK Then     ActiveExplorer.Activate   End If End Sub

その他の回答 (1)

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

Outlook自体のウィンドウなら ActiveExplorerのWindowStateを操作すればいいようですよ ' アイコン化マクロ Sub Normal2Icon()   ActiveExplorer.WidnowState = olMinimized End Sub ' ノーマルウインドウ化マクロ Sub Icon2Normal()   ActiveExplorer.WindowState = olNormalWindow End Sub

Harusir
質問者

お礼

ありがとうございます。やってみました。 確かにoutlookのウインドウが表示されている時は、ノーマルでもアイコン化でも可能みたいですが、アイコン化している場合にノーマル状態に戻そうとするとエラー(エクスプローラまたはインスペクタのWindowStateを設定できません。)が発生しました。 ちなみにソースは次のとおりです。 新着メッセージのイベントに記述しているのが間違いなのかもしれないですが・・・ Private Sub Application_NewMail() MsgBox "新着メッセージが届きました" ActiveExplorer.WindowState = olNormalWindow End Sub

関連するQ&A

  • windowsメールとOutlook 2007の違い

    最近VISTAを買ったばかりのパソコン初心者です。 最初からwindowsメールとOutlook 2007が入っていて違いが分からないのでとりあえずwindowsメールを使っています。 windowsメールは立ち上げた状態でなければメールを受信できないようですが、Outlook2007は立ち上げていなくても新着のお知らせはありますか? 又、windowsメールでもソフトを使えば新着メッセージが表示されると見たのですが、初心者でも簡単に使えるお勧めのフリーソフトがありましたら教えてもらえませんか? もし、outlook2007で新着メッセージが出るならoutlook2007でいいかなと思っていますが、その他にお互いのメッリット、デメッリットがありましたら教えてもらいたいです。 よろしくお願いします。

  • 最小化したフォームを元に戻す

    VB2005Expressにて開発を行っています。 最小化したフォームを元に戻せなくて困っています。 どなたかご存知の方がいらっしゃいましたらご教授願います。 下記の動作を実現したいと思っています。 ・Form1でボタンが押されたらForm2を表示する ・この際にForm1を最小化する ・Form2を閉じる ・この際にForm1を元に戻す(手前に表示する) 以下が作成したプログラムです。 ---モジュールにて下記を宣言 Module Module1 'オブジェクトの宣言 Public f1 As New Form1 Public f2 As New Form2 End Module ---Form1でForm2を開くボタンを押した場合の処理 Private Sub Button1_Click(ByVal sender~ 'Form2を表示 If f2 Is Nothing OrElse f2.IsDisposed Then f2 = New Form2 End If f2.Show() 'Form1を最小化する Me.WindowState = FormWindowState.Minimized End Sub ---Form2にて閉じるボタンを押した場合 Private Sub Button4_Click(ByVal sender~ f1.WindowState = FormWindowState.Normal ↑コレで実現できるかと思ったのですが、最小化されたままです・・・ End Sub

  • EXCELのVBAでシートコピーをしたとき元のマクロを削除するには?

    VBAのマクロでシートのコピーをしたいのですが、元のシートにはVBAのコードが含まれています。コピーするのはデータだけのコピーが必要で、マクロ自体は必要ないのですが、それを削除するコードはどのように書いたらいいのでしょうか? どうしてもコピーしたファイルを開くと「マクロが含まれています」という確認メッセージが出てしまうのですが、それもなくしたいのです。 シートにフォームのボタンが配置されている場合も同様に、そのボタン自体をなくした状態でコピーを行いたいのですが・・・。プログラムで行うのは不可能なのでしょうか?

  • 最小化すると元に戻らなくなってしまう

    ウィンドウを最小化し、その後元に戻そうとすると、一瞬だけ開いた後、窓が消えてしまいます。 タスクバーには残っているのですが、元に戻すことはできず、最大化のみ可能です。 最大化後、元のサイズに戻そうとすると、また消えてしまいます。 フォルダやブラウザは開きなおせばいいのですが、メッセンジャーで新しくメッセージを受信した時も窓が開けないので、困っています。 ノートPC使用中で、液晶を1台接続し、2画面で使用している際に起こるので、それが原因かとは思うのですが、解決策がわかりません。 どなたか、わかるかたがいらっしゃいましたら、よろしくお願いします。 WinXPhomeSP2日本語版使用です。

  • このファイルはマクロを含んでいます

    VBAを使用して、マクロを作成したBookがあります。マクロボタンごと削除したつもりなのですが、Bookを開こうとすると「・・・はマクロを含んでいます。」とメッセージが表示されます。 「有効にする」「無効にする」どちらを選択しても同じようには開けるのですが、このメッセージが表示されないようにするにはどうすればいいのでしょうか? まだマクロが残っているのだとしても、どこに残っているのか分かりません。。。

  • Outlook Expressがおかしくなっちゃいました

    Outlook Express6.0を使っています。 つい数日前から、メール受信時にステータスバーに表示される「○件の新着メッセージがあります」が表示されなくなってしまいました。 また、同時に封筒マークのインジケータも表示されないし、新着を知らせる音も鳴らない(勿論鳴るように設定してあります)。 更にはツールバーのすぐ下にウイルスバスターのボタンが6つ程並ぶようになってしまいました(うろ覚えですが、多分前はこんなの無かった・・・)。 自分が何の操作をしてからこうなったのか特定出来ないので困ってます。 よろしくお願いします。

  • VBAでマクロ付きファイルを開く場合

    こんにちは。 VBA初心者です。 VBA(Workbooks.Open Filename)を使ってマクロ付エクセルファイルを開こうとしたのですが、単体で開く時と違い「マクロを有効にするか無効にするか?」ダイアログが表示されません。 マクロを有効にしてファイルを開きたいのですが、これはダイアログが表示されていないだけで自動的に「マクロを有効」となってファイルが開いているのでしょうか?そうではない場合このダイアログを表示させるにはどうしたら良いでしょうか? 判りつらい説明で申し訳ありませんが、教えて下さい。

  • デスクトップの表示ボタンを押すと、ウィンドウの最小化とともに、アウトルックのウィンドウが閉じられてしまいます。

    デスクトップの表示ボタンを押すと、ウィンドウの最小化とともに、アウトルックのウィンドウが閉じられてしまいます。 まったく対処の方法が分かりません。アドバイス願いします!

  • Outlook ExpressがHotmailの新着メッセージのチェックを失敗します

    以前はこのような現象はありませんでした。 Outlook Expressを起動すると、自動的にHotmailアカウントに接続し、新着メッセージをチェックして受信していたのですが、最近はエラーを起こし、Hotmailの新着メッセージの取得に失敗するようになりました。しかし、そのエラー表示を消して、もう一度『送受信』ボタンをクリックすると無事にHotmailの新着メッセージを取得できます。 なにが原因なのかわかりません。以前のように、Outlook Expressを起動するだけで、Hotmailの新着メッセージの取得できるようにしたいです。どうぞよろしくお願いいたします。

  • Outlook(ホットメール)の受信トレイ

    先日よりOutlook(ホットメール)の受信トレイに入ってくる新着メッセージが「優先」と「その他」に区別されて届くようになりました。 それは受信トレイと表示された上に表示されています。 新着メールをチェックするのに、今まではすべて受信トレイに入ってきたのですぐに送信者とタイトルが見れたのですが、上記の様に区別され受信されるため、いちいち「優先」、「その他」クリックしなければならなくなりました。 元の様に、新着がすべて受信トレイで一括して見れるようにするにはどうすればいいのか、教えて下さい。