#702 | サブフォームの全レコードをクリップボードにコピーする方法 | フォーム、VBA | |
サブフォームに現在表示されている全レコード(フィルタが掛かっていればその結果のデータ)を、ボタンの1クリックでクリップボードにコピーする方法です。 マニュアルでそのような操作を行うには、
ここでは、DoCmdオブジェクトのRunCommandメソッドを使って、ちょうどマニュアルでそのような操作を行ったときと同じ手順を、プログラムで順番に再現します。 次の例では、フォーム上の[全コピー]ボタン(名前は「cmd全コピー」)のクリックによって、サブフォーム「frm商品マスタ_sub」に対してそれら一連の処理を行っています。 Private Sub cmd全コピー_Click() '[全コピー]ボタンクリック時 On Error Resume Next '再描画を停止 Echo False 'サブフォームにフォーカスを移動 Me!frm商品マスタ_sub.SetFocus 'すべてのレコードを選択 DoCmd.RunCommand acCmdSelectAllRecords '[コピー]を実行 DoCmd.RunCommand acCmdCopy 'フォーカスをこのボタンに戻す Me!cmd全コピー.SetFocus '再描画を再開 Echo True End Sub
実行前:Accessの画面 実行後:Excelのワークシートに[貼り付け]を行ったところ |
|||
|
Copyright © T'sWare All rights reserved |