2024年9月現在、1か月程度前からエクセルでコピー&ペーストを繰り返している時にこのようなエラーメッセージが良く出てくるようになりました。

クリップボードエラー
別のアプリケーションで使用されているため、コンテンツをクリップボードにコピーできませんでした。このブック内にコンテンツを貼り付けすることは出来ますが、他のアプリケーションでは使用できません。
Windows11とExcel365またはExcel2023の組み合わせからくる現象のようです。原因をこのように考えている理由は、
- Windowsを11にバージョンを上げた、Windows11を更新した
- Windows11でExcelのバージョンを上げた、更新した
などの操作の後この事象が発生しているという情報が多かったことと、
私の方に問合せが来ている例も
- 組み合わせがWindows11でExcel365または2023のパターンばかり
という現状から考えておそらくこの組み合わせからくる現象なのだと考えています。
今回はこのエラーの再現方法と、今判明している応急対策についてご紹介いたします。
クリップボードエラーを再現させる
体感ですが、何度もコピー&ペーストを繰り返している時にこのエラーをよく見る気がしますので、何度もコピーを繰り返し、狙ってメッセージを表示させることができるかどうかをテストしてみました。
具体的にはセルを選択した状態で「Ctrl」ボタンを押しながら「C」ボタンを連打してみました。
下図のように数式を入れたセルを複数用意してコピーを何度も繰り返してみた。

すると10回~20回くらい連打したところでこのエラーが出ることが多かった。
「クリップボードエラー」のメッセージが出ると何ができなくなるのか
このエラーが表示されたときに本当に貼り付けができないのか、いろいろなパターンを試してみました。
貼り付け先 | 値貼り付け | 書式貼付け | 数式貼付け |
---|---|---|---|
同じシート内 | ○ | ○ | ○ |
同じブック内の別シート | ○ | ○ | ○ |
別のブック | ○ | ○ | ○ |
ワード | × | × | × |
ブラウザの検索窓 | × | × | × |
メッセージに書かれている通り、エクセル上では問題なく貼り付けできるようですが、他のアプリケーションでの貼り付けはできないことが分かりました。(今回の場合はワード及びEdgeとChromeで確認)
しかし、エクセル上で右クリックで表示されるメニューの「貼り付けのオプション」から貼り付けをした後でブラウザ上で貼り付けをすると貼り付けができるようになっていた。

手動でコピーアンドペーストをしている場合はこのような方法で大きな手間もなくエラーの状況を回避することが出来ますが、VBA実行中にこのエラーがはっせいするとコードも止まってしまいますし、困ってしまう状況になると思います。
そのような場合は以下の方法で回避することが可能です。
VBA実行時のクリップボードエラー回避方法

例えば「A1」セルの内容を「A2」セルにコピーしたい場合を考えてみます。
クリップボードエラーが発生するコード例
Range(“A1”).Copy
Range(“A2”).Select
ActiveSheet.Paste
こちらですとクリップボードを利用するので、クリップボードが競合してしまうとエラーが発生してしまいます。
そのため以下のようにクリップボードを使わない方法にすることでこのエラーは発生しなくなります。
クリップボードエラーが発生しないコード例
Cells(2, 1) = Cells(1, 1)
このコードを実行してみると

きちんと「A2」セルに「A1」のセルの内容を表示させることができまいた。
こちらのコードは「A2」セルの値を「A1」セルと同じにする、という内容ですのでコピーもペーストもしていません。
そのためVBAの中でコピーアンドペーストを使わずにこの方法だけにすればVBAでエラーが発生してしまう現象を回避することが出来ます。
また、コード自体がシンプルになりますし、実行速度も格段に速くなります。今回のエラー表示とは関係なくとも、VBAのコードの中ではコピペはせずにこちらの方法を使うことを推奨いたします。
まとめ:クリップボードエラーが表示された時の応急対策
何度も連続でコピーをしていると20回に1回程度の割合で発生する。
貼り付け先がエクセルであれば、エラーメッセージが出ても問題なく貼付けができる。
エクセル以外のアプリケーション(ワードやブラウザなど)に貼り付けする場合は
- もう一度コピーする
- エクセル上で右クリックから貼り付け
のどちらかをしてからであれば貼り付けができる事を確認しています。
この現象はあくまで他のアプリケーションとクリップボードが競合してしまう事による現象と思われます。
そのため、他のアプリケーションを閉じてExcelだけが起動している状態にすれば競合が起きる確率は減ると思います。
可能であれば、競合するアプリケーションを特定することが近道とは思いますが、ウィルスソフトが競合しているという話もよく聞くので、これは解除するわけにもいかないと思いますので、こちらでご紹介した方法が確実な対策だと考えています。
コメント
こんにちは。
私もVBA実行中にこのメッセージが表示されていて困っています。調べてもこれぞという情報に行き当たりません。
そこで質問なのですが、以下の部分
「Windows11とExcel365またはExcel2023の組み合わせからくるバグのようです。」
の根拠となるドキュメントなりサイトなりがあるようでしたら、教えていただけないでしょうか。
ngosiさん
コメントいただきありがとうございます!
VBA実行中にこれが発生すると困りますよね、
「Windows11とExcel365またはExcel2023の組み合わせからくるバグのようです。」の記載の理由は
Windowsを11にバージョンを上げた、Windows11を更新した
Windows11でExcelのバージョンを上げた、更新した
などの操作の後この事象が発生しているという情報が多かったことと、私の方に問合せが来ている例も組み合わせがWindows11でExcel365または2023のパターンばかりだったことです。根拠というか経験則によるものでしたので記事中には詳しく記載していませんでした。
https://answers.microsoft.com/ja-jp/msoffice/forum/all/%E8%A7%A3%E6%B1%BA%E6%B8%88kb5030310%E9%81%A9/f4d8a31c-f136-4c55-a5b5-b5030e4b497a
https://answers.microsoft.com/ja-jp/msoffice/forum/all/excel2021%E3%81%A7%E3%82%B3%E3%83%94%E3%83%BC/0ae0f58c-617f-41d8-a133-0fee4a86dcfb
解決策について
まずこのエラーはExcel外の他のアプリケーションにペーストしようとした時に発生するエラーです。
今回VBA実行中とのことですので、貼り付け先はExcelであると想定して回答させていただきます。
方法1:クリップボードを使わないコピー方法に変更する
今はコピーアンドペーストの方法がこのようになっているのではないでしょうか
Range(“A1”).Copy
Range(“A2”).Select
ActiveSheet.Paste
こちらですとクリップボードを利用するので、クリップボードが競合してしまうとエラーが発生してしまいます。
そのため以下のようにクリップボードを使わない方法にすることでこのエラーは発生しなくなります。
Cells(2, 1) = Cells(1, 1)
方法2:競合している他のアプリケーションを閉じる
この現象はあくまで他のアプリケーションとのクリップボードが競合してしまう事による現象と思われます。
そのため、他のアプリケーションを閉じてExcelだけが起動している状態にすれば競合が起きる確率は減ると思います。
可能であれば、競合するアプリケーションを特定することが近道とは思いますが、ウィルスソフトが競合しているという話もよく聞くので、これは解除するわけにもいかないと思いますので、方法1の方が確実な対策だと思います。
方法3:Excelのバージョンを戻す
あまり現実的な方法ではないこととやり方を書くと長くなってしまうのでここでは作業方法は割愛いたします。
以上回答になっておりますでしょうか。
ご指摘いただいた内容により今後記事を修正させていただきます!
ありがとうございました。
店長さん
ご回答ありがとうございます。
私の方で動かしているマクロでは、セルへのコピーはCells(1,1)へ値をセットしています。
Copyはシートコピーをしています。
Copyでシートコピーをしない手段を探してみます。
リンクも貼っていただきありがとうございます。
バージョン等いろいろ試しているようですので、こちらの環境と見比べてみます。
ありがとうございました。