Непрерывный выбор формы отменяется при нажатии кнопки - PullRequest
1 голос
/ 25 сентября 2011

У меня есть форма непрерывного доступа с включенными селекторами записей. Вот код для обработчика события щелчка btnPrintReceipt. Я хочу получить ReceiptID каждой выбранной записи и открыть отчет с этими идентификаторами. Проблема в том, что когда вы нажимаете командную кнопку, она отменяет выбор всех записей (я вижу, что это происходит) и сохраняет только верхнюю доступную.

Private Sub btnPrintReceipt_Click()
    'Build filter string containing all selected receipt ids
    Dim FilterString As String

    'Move to first record
    Dim rsReceipts As Recordset
    Set rsReceipts = Me.RecordsetClone
    rsReceipts.Move Me.SelTop - 1

    'Cycle through and record
    Dim i As Integer
    For i = 0 To Me.SelHeight
        FilterString = FilterString & "([ReceiptNumber]=" & rsReceipts![ReceiptNumber] & ") OR "
        rsReceipts.MoveNext
    Next

    'Remove trailing or
    Dim NewStringLenth As Integer
    NewStringLenth = Len(FilterString) - 4
    If NewStringLenth > 0 Then
        FilterString = Left(FilterString, NewStringLenth)
    Else
        FilterString = ""
    End If

    'Open the report
    DoCmd.OpenReport "rptReceipt", acViewPreview, "", FilterString
End Sub

1 Ответ

1 голос
/ 25 сентября 2011

Microsoft имеет довольно длинную статью о Как перечислять выбранные записи форм в Access 2000 , которая также будет работать с более поздними версиями.В статье приведен код для запуска на командной кнопке.

...