#691 | ボタンのピクチャをコピー&ペーストするプログラム例 | フォーム、VBA | |
Accessのフォームのデザインビューには「書式のコピー/貼り付け」という便利な機能があり、この機能を利用することで、あるひとつのコントロールの書式を他の複数のコントロールへ次々とコピー&ペーストしていくことができます。 操作としては、元となるコントロールを選択状態にして、リボンの[ホーム]タブや[書式]タブにある[書式のコピー/貼り付け]ボタンを”ダブルクリック”(※注)して、あとは書式をペーストしたいコントロールを次々とクリックしていくだけです。 ※注:ワンクリックだけだと1ケのコントロールにしか貼り付けできません。他のコントロールを1回クリックすると[書式のコピー/貼り付け]の機能が解除されてしまいます。複数に連続して貼り付けたいときはダブルクリックするのがポイントです。 一方、「書式のコピー/貼り付け」では、プロパティシートの[書式]タブにあるすべてのプロパティがコピーされるわけではありません。そこで、ここではその対象外となっているコマンドボタンの「ピクチャ」プロパティを例に、『あるひとつのコントロールのピクチャをコピーし、それを他の複数のコントロールへ貼り付ける』という処理をプログラムで作ってみます。 なおここでは、他のコントロールへひとつずつ貼り付けていくのではなく、「選択状態になっている複数のコントロールへまとめて貼り付ける」動作とします。 まず、標準モジュールに次のようなプロシージャを用意します。 Public Sub PropCopyPaste(intAction As Integer) Static svarPropValue As Variant Dim ctl As Control If intAction = 1 Then svarPropValue = Screen.ActiveControl.Properties("PictureData") ElseIf intAction = 2 Then For Each ctl In Screen.ActiveForm.Controls With ctl If .InSelection Then ctl.Properties("PictureData") = svarPropValue End If End With Next ctl End If End Sub このプロシージャは、次のようにして使います。
|
|||
|
Copyright © T'sWare All rights reserved |