テキストコピーツール

クリップボードをたくさん用意するような用途のプログラムです。
単純なタイトルですが....   私は、これを必要とするシチュエーションに何度も出会っています。 ほとんどはプログラムの開発上での必要性なのですが、作成済みの多数のドキュメントに対して同一の、あるいは同一に近い修正を加えなければならないということはプログラム開発でなくても発生すると思います。 あえて、このプログラムを作成したのはそのような理由からです。
VBAなどで一時的な修正プログラムを作成して一斉に更新できるような場合ならこのプログラムの出番はありませんが、変更元のドキュメントを見ながら修正箇所を判断して変更用のドキュメント部品を差し替えたり挿入したりを行なうようなことで、しかも変更対象のドキュメントが多数あるような場合がこのプログラムの用途です。
変更元のドキュメントによって、差し替えるドキュメント部品が「A」「B」「C」と3種類あるとか、変更対象が複数あって「D」「E」「F」も用意するとか、状況は多岐に渡るでしょうからこれに対応する仕組みがあると便利です。
しかもこの「A」「B」「C」はそれぞれ複数行に渡るものかもしれません。 Windowsのクリップボードは実際には1つしかないので「A」「B」「C」を使い分けるにはそれぞれのドキュメント部品を「コピーし直す」という作業が必要です。
Windowsのアクセサリにある「メモ帳」でもできることではあります。作業性だけの違いです。
「メモ帳」の場合はどこからどこまでが「A」、どこからどこまでが「B」というのを作業者が判断しなければならず、最低でも対象テキストの範囲を再選択してコピーするという2アクションが必要です。 行数が多い場合や、「A」「B」「C」の種類が多いと、「メモ帳」側がスクリーンに収まらず、スクロールバーの操作が加わることも起こります。
また、余分な改行までコピーしてしまうというような操作誤りも発生しやすいことです。
頻繁にこのようなシチュエーションに遭遇することはありませんが、もしかしたら用意しておくと便利なツールなのかも知れません。
テキストの編集作業で定型文のコピー/貼り付けを多用する方向けのツールです。
同じ内容のコピー/貼り付けを複数種類に分けて繰り返し行なう場合にあらかじめ最大30種類までのテキストをそれぞれタイトルを付けて登録しておき、コピーボタンでクリップボードの内容を差し替えて貼り付けに利用できるようにしています。 テキストをそれぞれタイトルを付けて登録しておき、コピーボタンでクリップボードの内容を差し替えて貼り付けに利用できるようにしています。
言い方を変えれば、たくさんのテキスト用クリップボードを選択しながら貼り付け作業が行なえるツールなのです。

上のコラムでも触れましたが、作業そのものは「メモ帳」でもできることです。
種類別に行を分けてテキストを用意しておいて、貼り付け先ごとに必要範囲を選択してコピーして貼り付けます。 選択範囲を間違えないように気をつければ良いことですが、それぞれが複数行だったりすると、それぞれのテキストの範囲が判るように空き行も作らなければならず、種類が多いと1画面に収まらずコピー/貼り付けの作業時にスクロールが必要になることも発生します。
つまり「メモ帳」の場合は「必要範囲の選択」と「コピー」という2アクションの作業になり、場合よっては「スクロール」が加わるということです。

本ソフトなら、行数に関わらず1件を1ボタンのクリックだけでコピーできます。作業件数が多い場合にこの作業性の違いが貢献できるわけです。

この手のフリーソフトはたくさんあります。
タスクトレイの常駐するものが多いようですが、作成側の意図に「常駐」はありませんでした。それに近年のPCならこの程度のプログラムの起動には時間は掛かりません。

「コピー」時のアクションを少なくしたいので単純なWindowsフォームアプリケーションとしました。
コピー⇒貼り付けを繰り返すのにそのコピーについて先にタイトルの一覧がフォームに表示されるので他のアプリケーションのウィンドウがアクティブな状態から別のアイテムをコピーし直す場合でもウィンドウの選択し直しは不要でタイトルの横のボタンをクリックするだけです。

クリップボードの内容がフォームの上部にモニターとして表示されているので誤操作も防止できます。
また、コピーボタンでコピーした場合はタイトル部が黄色で反転表示されるので、同じアイテムを続けて貼り付ける場合は再度コピーボタンをクリックする必要がないことも明示されます。

最前面に表示させることもできるので、貼り付け先のアプリケーションが最大化されている場合でも利用することができます。

このソフトは、先に作成していた「シンプルなパスワード管理ツール」が「アカウントID」や「パスワード」を順次コピー/貼り付けを行なうという動作であることから、自分が時々行なっている「この手」の作業に恩恵があると派生的に思いついて作成したものです。
「もくじ」では開発系のブロックに収容していますが、「定型文を使い分けて貼り付ける」という機能はあらゆるジャンルで使用できると思います。

起動させた画面のイメージを見てみましょう。

テキストコピーツール(画面)

このような画面です。
コピーするアイテムはデフォルトでは30件まで登録でき、この画面では12番目までが見えている状態です。 スクロールバーで30番目まで移動できるほか、画面は広げることができるので一度に見える件数を増やすことも可能です。
上部にある広いテキストボックスはいわゆる「クリップボードビューワ」になっています。新たなテキストがコピーされると本プログラム内でコピーされたかどうかに関わらずそのテキスト内容が表示されます。
現在、「05」の内容がコピーされているのでその行が黄色くなっており、内容が「クリップボードビューワ」に表示されている状態になっています。

もう、お解りのように、テキスト内容を登録した行に「⇒コピー」のボタンが表示されるようになっています。 さて、テキスト内容の登録の登録はどうするのでしょうか。

テキストコピーツール(画面)

テキストの登録を行ないたいタイトル表示のところをダブルクリックするか、このように右クリックから「編集」を選びます。

テキストコピーツール(画面)

すると、このようにコピーするテキストを登録する画面が表示されるので内容を登録します。 以前に登録されている行を編集しようとすると以前の登録内容がそのまま表示されるので、そこからの変更登録も可能です。 タイトルは省略することができ、省略すると登録テキストの1行目がタイトルとして登録されます。

これで登録した行の「⇒コピー」ボタンをクリックすると、

テキストコピーツール(画面)

このようになります。

このような方法でコピー/貼り付けを行なうテキストの登録を行なって運用して下さい。

コピー/貼り付けの作業が1日で終わらなかったら...
本プログラムは一旦閉じても、次回起動した時に画面のスクリーン上の位置・サイズの他、登録したテキストそれぞれの内容を再現して表示するようになっています。 ですから、1日で終わらなくても翌日以降に再度起動させて続きの作業を行なうことができます。
さらに、長期にわたって作業を行なう場合や、別のコピー/貼り付け作業が割り込む場合については表示中の「コピーセット」を名前を付けたファイルに「エクスポート」させておき、 次回必要になった時に「インポート」させて再利用することができます。

常駐させるような運用があるかも知れません。
たとえばメールに定型文を挿入させるようなケースが考えられます。
Mozilla Thunderbird」のようにテンプレート機能があったり、アドオンに定型文挿入機能を持つメールソフトではそちらに譲りますが、 そのような機能がないメールソフトの場合は必要な定型文を本プログラムに登録しておいて、ここからコピー/貼り付けで利用するような用途にも利用できるわけです。

運用上のご注意
コピーするテキストを登録する場合に、一覧表示の「タイトル」ラベルをダブルクリックするとそのタイトルがクリップボードに収容されます。 これは使用している「ラベル」コントロールの仕様ですので、これを避けたい場合は右クリックの「編集」から登録画面を呼び出して下さい。

画面上部にある「クリップボードビューワ」は本プログラムの外で発生したコピーの操作でもそれがテキストの場合は内容を表示するようになっています。 ここでご注意いただきたいのは「パスワード」です。「パスワード」をコピー/貼り付けで運用している場合は「パスワード」のコピーを行なった時点でその内容が「クリップボードビューワ」に表示されてしまいます。 この件はこちらでお勧めしている「シンプルなパスワード管理ツール」でも同様ですが「シンプルなパスワード管理ツール」ではコピー状態がデフォルトでは7秒後に自動解除されるようになっています。 「クリップボードビューワ」はその文字列がパスワードなのかの判断はできません。文字列がコピーされたらそれを表示させるというだけの機能になっています。

インストールについて
下記の「ダウンロード」からインストーラが収容されたZIP形式の圧縮ファイルがダウンロードできます。



動作環境はMicrosoft .NET Framework 4.*(4.5~4.8)です。
本アプリケーションは32ビット版ですが、Windows64ビット版でも問題ありません。



解凍してから「VBTextCopyTool1_Setup.exe」を起動することでインストールが行なわれます。インストール後はスタートメニューの「すべてのプログラム」から「Excelでお仕事!VisualStudioツール」の中にある「テキストコピーツール」を起動して下さい。 なお、デジタル証明書は搭載していないので、インストール中の確認画面で発行元は「不明」と表示されます。

アンインストールを行なう場合は、コントロールパネルの「プログラムと機能(プログラムの追加と削除)」から「テキストコピーツール」を選択して「削除」を実行します。
本ソフトではレジストリは使用していません。画面モードの設定保存はMicrosoft .NET Frameworkの設定保持機能を使っています。

著作権等について
本ソフトの著作権は「Excelでお仕事!(井上 治)」が所有しています。
フリーソフトですのでご自由にダウンロードしてご利用いただけます。 但し、動作確認は充分に行なっておりますが、このソフトを使ったことによって損害が発生しても一切の責任は負えません。

本記事内容の転載についてはアーカイブに変更を加えないことを条件に、転載は自由にして頂いて構いませんが、必ずご連絡いただくようにお願いします。 連絡については当サイトの「意見・質問」ペ-ジが利用できます。
また、不具合や改善点などについてもご連絡いただけると幸いです。

バージョン情報

更新日 Ver 内容
2014/01/21 1.0.0.0 新規作成
2014/01/22 1.0.0.1 保持件数を30件に拡張、設定保持方法を変更(Specialized.StringCollection)
2014/01/22 1.0.0.1 バージョン表示を追加(起動初回のみ)
2014/01/22 1.0.0.1 最前面モードの保持機能を追加
2014/01/23 1.0.0.2 VisualStudio2010に変更してセットアップを作成
2014/01/25 1.0.1.0 各行メンバをユーザーコントロールに移行、クリップボードビューワを統合
2014/01/26 1.0.1.0 タイトル自動登録時にコメントマークを除去する機能を追加
2014/01/26 1.0.1.0 ToolTip内容整備、コピー解除ボタンはテキスト有無だけで表示するように変更
2014/01/26 1.0.1.2 設定のUpgrage対応漏れを修正
2014/08/16 1.0.1.3 未登録行が黄色に反転してしまう現象を回避させる対応
2014/08/31 1.0.2.0 タイトルラベルに右クリックメニューを追加する対応
2014/08/31 1.0.2.0 タイトル自動登録時にTab,Cr,Lfを除去する機能を追加
2014/08/31 1.0.2.0 インポート/エクスポート機能の追加
2014/08/31 1.0.2.0 DPI制御をフォーム変倍方式に変更
2014/08/31 1.0.2.1 「ルーラー」メニューの表示制御を追加(二重挿入を回避)
2014/08/31 1.0.2.1 app.manifestの書き換え対応(DPI独自制御PG)
2014/09/01 1.0.2.2 メニューオーバーフロー時の対応を追加
2014/09/01 1.0.2.3 クリップボードビューワの背景色をLightYellowに変更
2015/03/23 1.0.3.0 ShownイベントでIMEモード初期化の対応を追加
2015/12/07 1.0.3.1 各テキストボックスでCtrl+Aで全選択されるように対応
2016/01/17 1.0.3.1 Windows10での動作確認を行なったので記載を変更
2016/01/23 1.0.3.2 各テキストボックスIMEモードは「NoControl」に変更(ユーザー選択に委譲)
2016/03/06 1.0.3.3 メニューにToolTipガイドを追加
2016/04/21 1.0.3.4 ウィンドウに最小化ボタンを追加
2016/05/15 1.0.3.5 フォームの位置・サイズ保持で最小化時を除外する対応を追加
2016/05/22 1.0.3.6 フォームサイズ退避値の異常値対策を追加
2016/06/17 1.0.3.7 Windows複数画面環境でのフォーム下辺でのマウスによるサイズ変更動作不正の対応
2016/07/09 1.0.3.8 マルチスクリーン時のフォーム制御の改善
2016/07/11 1.0.3.9 クリップボードイベントが働かなくなった件を修正
2016/08/11 1.0.3.10 初回の登録フォーム呼び出しが例外になってしまう件を修正
2016/11/23 1.0.4.0 クリップボードビューワ下にSplitterを配置してサイズ可変にする対応
「№挿入」「№削除」の機能追加対応(登録画面)
2016/11/23 1.0.4.1 タイトル、内容の重複登録チェックを追加
2016/11/24 1.0.4.2 登録一覧側が自動スクロールバー表示なっていなかった件を修正
2017/03/16 1.0.4.3 配置変更、登録件数変更メニューにショートカットキー設定を追加
項目移動フォームの表示時点で項目が全選択されない件の対応
2017/11/07 1.0.4.5 最前面表示中に「配置変更」「登録件数変更」等画面が裏返って操作できなくなる件を修正
1.0.5.0 「配置変更」画面を連続して操作できるように対応(キャンセルするまで)
2017/11/11 1.0.5.1 「キャンセルが選択されました」の後、一旦閉じないと再登録ができない不具合を修正
2018/10/06 1.0.6.0 DPI環境で起動時フォーム位置がスクリーン領域外になってしまうことが発生する件の対応
2018/10/24 1.0.6.1 フォームの初期表示時の明滅動作の対応
2018/11/04 1.0.6.2 画面位置保持機能について複数画面時の個別DPI指定に対応する修正②
2021/11/30 1.1.0.0 開発環境を「Microsoft Visual Studio 2010」から「Microsoft Visual Studio 2019」に変更
2021/11/30 1.1.0.0 フレームワーク環境を「.NET Framework4.x」に変更
(ターゲットフレームワークは「.NET Framework4.5」に設定)
2022/05/14 1.1.0.2 ・開発環境を「Microsoft Visual Studio 2022」に変更
Windowsスタートメニューメンバの整理(概要説明リンクの削除⇒本体メニューから呼び出し可能)
2023/01/15 1.1.1.0 独自メッセージボックス変更(マウス既定ボタンモード対応)

※バージョンアップでのインストール時に動作上は正常にインストールされるものの、EXEファイルが置き換わらない現象があるようです。 フォーム上の各コントロールをマウスでポイントするとツールチップでバージョンが表示されるので、新しいバージョンになっていない場合は一旦アンインストールさせてから再度インストールさせて下さい。

ダウンロードはこちら。

←VBTextCopyTool1_Setup.zip
      (678KB)

Vectorからも「テキストコピーツール」でダウンロードできます。


.NET Frameworkの変更について   PCに搭載されている.NET Frameworkのバージョンはその有無を含めてWindows側の環境に依存します。
本プログラムは従来、古いWindowsへの対応から、.NET Framework2.0~3.5をターゲットとしていましたが、 現在では逆に.NET Framework3.5をインストールすることが必要となって余分な作業負荷となってしまってきているため、 Ver1.1.0.0より.NET Framework4.xに変更しました。



本プログラムを新規にインストールされる場合は必要な.NET Framework環境の確認だけでご利用いただけますが、 以前の.NET Frameworkバージョンから.NET Framework4.xにバージョンアップされる場合のみ設定やデータが引き継がれないのでご注意下さい。



手動作業での設定引き継ぎ(設定ファイルのコピー作業)バージョンアップ時の不具合については、こちらで説明しています。



一旦、.NET Framework4.x環境に移行した後の今後のバージョンアップについての設定内容は、自動的に引き継がれるようになります。