2016-01-18 1 views
0

Приведенный ниже код работает, но только для первой записи в непрерывной форме ее отсутствие цикла забрасывает записи. Поэтому, если первая запись проверена, я получаю сообщение «Перед тем, как продолжить, вам нужно установить флажок RELEASE». и если это не я получаю другое сообщение.Цикл Recordsetclone

Что мне нужно сделать, это запустить все флажки, которые являются «ReleaseProduct», и выйти из подчинения в первом, если он есть, и дать сообщение, и если флажки не установлены запустите Cancel = fncRequiredReleaseSelectedEmail (Me) и выйдите из под. Im портя цикл где-то ...

Вот код, у меня есть в моей кнопки формы ....

Dim Cancel As Integer 
Dim rs As Recordset 
Set rs = Me.frmsub_ProductHoldData.Form.RecordsetClone 
With rs 
    .MoveFirst 
    Do While Not .EOF 
     If rs.Fields("ReleaseProduct") = False Then 
      MsgBox "You need to select a RELEASE check box before proceeding.", vbInformation, "Selection Error" 
      Exit Sub 
     Else 
      Cancel = fncRequiredReleaseSelectedEmail(Me) 
      Exit Sub 
     End If 
     .MoveNext 
    Loop 
End With 
+0

У вас есть 'Exit Sub' в обоих условиях' If'. Он никогда не пропустит больше одного прохода. – RLH

ответ

0

Я с трудом говорил, если это именно то, что вы ищете или нет, но это просмотрит все эти записи и будет действовать только в том случае, если один из них проверен.

Предупреждение о выборе флажка Release отображается только в том случае, если флажки не установлены.

Dim Cancel As Integer 
Dim rs As Recordset 
Set rs = Me.frmsub_ProductHoldData.Form.RecordsetClone 
With rs 
    .MoveFirst 
    Do While Not .EOF 
     If rs.Fields("ReleaseProduct") = True Then 
      Cancel = fncRequiredReleaseSelectedEmail(Me) 
      Exit Sub 
     End If 
     .MoveNext 
    Loop 
    MsgBox "You need to select a RELEASE check box before proceeding.", vbInformation, "Selection Error" 
End With 
Смежные вопросы