貼り付けイベントをキャッチしますか?
-
03-07-2019 - |
質問
カスタムキャビネットメーカーで働いており、製品の独自の価格設定プログラムを作成しています。ポップアップボックスがあるフォームがあるので、ユーザーはそのキャビネットのあいまいなドアのどちら側にヒンジをオンにするかを選択できます。これでうまくいきましたが、アイテムをコピーして下部に貼り付けると、ポップアップボックスが表示されなくなります。新しいレコードが貼り付けられているのか手動で入力されているのかを知る方法はAccess VBAにありますか?
解決
たとえば、標準モジュールにそのようなコードを追加する場合、メニューをカスタマイズできます。
Public gvarPasted As Boolean
Function AssignVar()
gvarPasted = True
DoCmd.RunCommand acCmdPaste
End Function
ツールバーメニューのカスタマイズオプションを使用して、メニューの[貼り付け]の[アクション]プロパティをこの関数に設定できます。また、組み込みメニューの代わりに使用する独自のショートカットメニュー(右クリックメニュー)を作成する必要があります。ショートカットメニューは、すべてのフォームまたはそれを必要とするフォームのみに割り当てることができます。すべてのフォームのショートカットメニューをオフにすることもできます。
他のヒント
おそらくこの行の何かが合うでしょう。
Option Compare Database
Public gvarPasted As Boolean
Private Sub txtText_AfterUpdate()
If Not gvarPasted Then
'Open pop-up here
Else
gvarPasted = False
End If
End Sub
Private Sub txtText_KeyDown(KeyCode As Integer, Shift As Integer)
'Detect ctrl-V combination
If Shift = acCtrlMask And KeyCode = vbKeyV Then
gvarPasted = True
End If
End Sub
所属していません StackOverflow