VSTO C# Excelアドインでクリップボードパネルを表示・非表示する方法

C#

VSTOはVisual Studio Tools for Office の略で、officeのアドインやマクロ付きドキュメントを、VB.netやc#などで記述できるフレームワークです。Visual Studioで開発することができ、VBAとオサラバできるMS公式フレームワークです。

この記事では、c#で、Excelブックのクリップボードパネルを表示・非表示する方法を紹介します。

クリップボードパネルとは?

クリップボードパネルには、クリップボードにコピーされた情報が表示され、マウスクリックで貼り付けできたり、どのような情報があるか分かるようになっています。

クリップボードで扱える情報は直近の1つだけでなく、過去にコピーした情報も表示することができます。またデータはテキスト形式だけじゃなく、画像も扱うことができます。

クリップボードパネルの表示と非表示を切り替えるコード

クリップボードの表示と非表示を切り替えるには、DisplayClipboardWindowプロパティを変更します。

DisplayClipboardWindowプロパティがTrueであればクリップボードパネルを表示し、Falseであれば非表示にします。

以下のコードでは引数にbool型でdisplayFlagを取るようにしています。この引数の値をDisplayClipboardWindowプロパティにセットすることで、表示と非表示を切り替えるようにしています。

        public static void DisplayClipboard(bool displayFlag)
        {
            Globals.ThisAddIn.Application.DisplayClipboardWindow = displayFlag;
        }

クリップボードパネルを表示するには

上記の関数を使用してクリップボードパネルを表示するには、trueを引数にセットして呼び出します。

ThisAddIn.DisplayClipboard(true);

クリップボードパネルを非表示にするには

上記の関数を使用してクリップボードパネルを非表示にするには、falseを引数にセットして呼び出します。

ThisAddIn.DisplayClipboard(false);

ソースコード全文

ソースコード全文は以下のgithubリポジトリに格納しています。

コンパイルすれば動作しますので、Visual Studioをお持ちの方は遊んでみてください。

https://github.com/harus0313/cliesx


タイトルとURLをコピーしました