копировать и вставлять всего одним двойным щелчком - PullRequest
0 голосов
/ 15 декабря 2018

ОШИБКА MSG они подключены Я создаю словарь итальянского (A) -английского (B) в access2010.Я создал код, который позволяет копировать идентификатор из (A) маски с помощью двойного щелчка.(Через ID> свойство> в dblclick: подпрограмма события).Но мне также нужно, чтобы скопированный идентификатор сразу вставлялся в поле со списком маски (B) под названием «cboinglese».Вот мой код, пока не замечайте слишком много паролей «if» и «пароли», потому что я скопировал их из интернета (VBA - не мой обычный язык программирования).

Private Sub ID_DblClick(Cancel As Integer)
    With Me.ID
       .SetFocus
       .SelStart = 0
       .SelLength = Len(.Text)
     End With
     If Me.ID.SelLength = 0 Then
         MsgBox "Nessuna Password è stata generata!", vbCritical, "VERIFICA BENE"
  Exit Sub
Else
    RunCommand acCmdCopy
 End If
 End Sub

Спасибо, ребята, жду ваших драгоценных ответов

1 Ответ

0 голосов
/ 16 декабря 2018

Если вам просто нужно скопировать значение из ID в поле со списком с именем cboinglese, то вам вообще не нужно использовать буфер обмена Windows.Вы можете просто сделать следующее в используемом вами событии ID_DblClick:

Me.cboinglese.Value = Me.ID.Value

Эта единственная строка кода передаст значение ID в поле со списком.

Чтобы предотвратить нежелательные результаты, если при двойном щелчке идентификатор оказался пустым, вы можете улучшить его до следующего:

If Len(Me.ID.Value) > 0 Then
    Me.cboinglese.Value = Me.ID.Value
End If

Таким образом, значение вашего поля со списком обновляется только тогда, когда ID содержитзначение при двойном щелчке.

Как правило, вам не нужно копировать свое значение в буфер обмена Windows, если только вам не нужно использовать это значение в другом приложении вне приложения Microsoft Access.

ОБНОВЛЕНИЕ ПОСЛЕ новой информации от OP

@ tksweb4freelrn - Вы не можете поместить код VBA непосредственно в диалоговое окно свойств формы.Вы должны удалить этот текст из диалогового окна свойств, а затем нажать кнопку elipses и выбрать Code Builder, чтобы создать код события VBA в модуле за формой.

enter image description here

Затем вы сможете добавить приведенный выше код в процедуру события, которая будет выглядеть примерно так:

Private Sub ID_DblClick(Cancel As Integer)

    If Len(Me.Id.Value) > 0 Then
        Me.cboinglese.Value = Me.id.Value
    End If

End Sub
...