「ACCESSの画面を開いて、他システムへのデータ入力を行っている」、そんな手間のかかる仕事をしていませんか?
システムがつながっていなければ仕方ないのですが、データが多いとなかなか手間ですよね。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-01.png)
ACCESSフォーム、行の移動だけでクリップボードにコピーできます。
受け取る側では「CTRL」+「V」で貼り付けるだけの作業です。
とても便利です。
VBAを使用しますが簡単な記述なので、慣れていない人でも一度試していると良いかと思います。
今回紹介するクリップボードへコピーする機能は、ACCESSフォームの現在行を変える機能と併せて使うと更に便利になります。
※環境はWindows7、ACCESS2010です。
ACCESSフォームは事前に準備しておく
ACCESSのフォームを事前に作成しておきます。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-02-1024x494.png)
デザインビューで「レコード移動時」のイベントを指定する
デザインビューにします。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-03-1024x494.png)
「デザイン」→「プロパティシート」でプロパティーシートを表示します。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-04-1024x494.png)
「プロパティシート」の「イベント」タブをクリックして「レコード移動時」が表示されるか確認します。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-05-1024x494.png)
プロパティシートに「レコード移動時」と表示されない場合は、フォーム全体が選択されていません、「フォームヘッダー」と書いてある部分の左上の□の部分をクリックします。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-06-1024x494.png)
「プロパティシート」→「イベント」→「レコード移動時」→右端の「▼」をクリックして「イベントプロシージャ」を選びます。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-07-1024x494.png)
エディターを開く
「レコード移動時」の一番右側の「…」をクリックするとコードエディターが表示されます。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-08-1024x494.png)
エディターが開きます。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-09-1024x795.png)
参照設定を行う
「ツール」→「参照設定」で「Microsoft Forms 2.0 Object Library」をチェックします。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-10-1024x800.png)
「Microsoft Forms 2.0 Object Library」がリストにない場合は「参照」を選びます。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-11.png)
![](https://previous-se.com/wp-content/uploads/2022/12/img035-12.png)
「System32」フォルダの「FM20.DLL」を開きます。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-13.png)
「Microsoft Forms 2.0 Object Library」がリストに追加されるのでチェックしてOKを選びます。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-14.png)
VBAでコーディングする
エディター画面に戻るので以下のようにコーディングします。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-15-1024x795.png)
Dim wDO As DataObject
Set wDO = New DataObject
wDO.SetText Me!商品コード
wDO.PutInClipboard
エディター画面の「×」でエディターを終了します。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-16-1024x795.png)
フォームを表示して動作確認を行う
フォームを表示して任意の行を選択します。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-17-1024x494.png)
メモ帳などを開き、指定した文字列が貼り付けされたら成功です。
![](https://previous-se.com/wp-content/uploads/2022/12/img035-18.png)
![](https://previous-se.com/wp-content/uploads/2022/12/img035-19.png)
VBAは難しい?
ところで、VBAは難しいでしょうか?
VBAは一般的には簡単な言語だと言えますが、プログラミングの経験がない人には難しいかもしれないですね。
書籍などの独学でなかなか覚えられないのであれば、スクールで基礎から習うのも手段です。
スクールに通ってでもプログラミングは覚える価値が有るスキルです。
最後に
少し立ち止まってACCESSの参考書などいかがでしょうか?