none
Excel2013 VBA Officeクリップボード すべてクリアする方法を教えてください

    質問

  • お世話になっております。

    Excel VBAで、「Officeクリップボード」をすべてクリアする方法がわかりません。

    どなたかご存の方、教えて頂けないでしょうか。

    「ホーム」タブ>「クリップボード」>「すべてクリア」

    この動作をVBAで行いたいです。

    マクロの記録をしてみましたが、コードが取得できませんでした。

    2017年12月18日 3:16

回答

  • こんにちは。

    MSAAのコードはバージョンによっては動作しませんので、下記ページで紹介しているUI Automationを使ったコードの方が良いかもしれません。

    ・Office クリップボードをマクロで操作する(UI Automation)
    https://www.ka-net.org/blog/?p=4944

    また、どちらにしてもOffice クリップボードを操作する処理は若干複雑になりますので、どうしても必要でなければ、機能を実装しない方向で調整しても良いのではないかと思います。
    • 回答としてマーク francois_k 2017年12月18日 8:32
    2017年12月18日 8:28

すべての返信

  • 以下のページのEvRさんの回答が参考になります。

    https://stackoverflow.com/questions/14440274/cant-clear-office-clipboard-with-vba

    2017年12月18日 4:19
  • 下記のリンク先も参考になるかと。

    Office クリップボードをマクロで操作する(Office 2007以降)


    やっていることは、nomboさんの回答のリンク先と同じようですね。

    2017年12月18日 4:46
  • こんにちは。

    MSAAのコードはバージョンによっては動作しませんので、下記ページで紹介しているUI Automationを使ったコードの方が良いかもしれません。

    ・Office クリップボードをマクロで操作する(UI Automation)
    https://www.ka-net.org/blog/?p=4944

    また、どちらにしてもOffice クリップボードを操作する処理は若干複雑になりますので、どうしても必要でなければ、機能を実装しない方向で調整しても良いのではないかと思います。
    • 回答としてマーク francois_k 2017年12月18日 8:32
    2017年12月18日 8:28
  • nombo様

    迅速なアドバイスをありがとうございます。

    このやり方が、私の環境ですと成功しなくて、投稿した次第でした。

    兎にも角にも、ありがとうございました!

    2017年12月19日 0:37
  • hatena19様

    迅速なアドバイスをありがとうございます!


    2017年12月19日 0:38
  • きぬあさ様

    迅速なアドバイスをありがとうございます。

    MSAAのコードは私の環境ですと動作しなくて、

    この投稿をする前に、きぬあささんが教えていただいたのと同じページを見つけてまして、

    UIAutomationのやり方で実装が成功したのですが(Officeクリップボードが本当に消えてくれたのでとても感動しました)、

    参照設定でUIAutomationClientを読み込む際、

    UIAutomationcore.dllの配置フォルダがOSの設定から変更出来ない点など(レジストリエディタでも変更出来なかった)、

    私自身が利用ユーザー部門へ設定の説明をする点でネックに感じ、

    他のやり方がないかなと思い、投稿した次第でした。

    >また、どちらにしてもOffice クリップボードを操作する処理は若干複雑になりますので、どうしても必要でなければ、機能を実装しない方向で調整しても良いのではないかと思います。

    そうですね、そのように私も思います。

    色々とありがとうございました。

    2017年12月19日 0:48