#374 カレント行の内容を新規レコードにコピーする方法(その1) フォーム、VBA

現在カーソルがある行の内容を新規レコードに追加コピーする方法です。

ここでは、DoCmdオブジェクトのRunCommandメソッドを使って、ちょうどマニュアルでそのような操作を行ったときの手順を、プログラムで順番に再現します。

次の例では、フォーム上の[コピー]ボタンのクリックによって、カレント行の内容を新規レコードにコピーしています。既存のレコードの内容がそのまま(ただしオートナンバーは除く)コピーされます。

Private Sub cmdCopy_Click()
'[コピー]ボタンクリック時

  '現在カーソルのある行全体を選択
  DoCmd.RunCommand acCmdSelectRecord
  'その内容をコピー
  DoCmd.RunCommand acCmdCopy
  '追加貼り付けを実行
  DoCmd.RunCommand acCmdPasteAppend
  '貼り付けられたレコードに移動
  DoCmd.GoToRecord , , acLast

End Sub


実行前:
実行前
実行後:
実行後


※あくまでも単純に既存レコードの内容を追加貼り付けするだけです。主キーフィールドなど、貼り付け後に編集する必要がある場合もあります。
| Index | Prev | Next |

この情報は参考になりましたか?、問題は解決しましたか?、もしまだなら......
T'sWareのワンポイトテクニカルアドバイスをご利用ください。3000円/件〜でご支援します。
スタンドアロンからSQL Server対応まで、オーダーメイドのシステムを短納期・安価でお届けします
 

Copyright © T'sWare All rights reserved