Разработка базы данных / Открытая форма ЩЕЛЧОК СОБЫТИЯ в VBA с использованием Access: конкретный запрос

Я хочу запрограммировать событие щелчка в форме "Основная информация", которая откроет до 17 других форм на основе значений, выбранных в комбинированном элементе управления полем поиска с несколькими ответами (в соответствии с полем числового идентификатора / категориями текстовых строк, связанными с помощью независимая отдельная таблица), размещенная в этой форме "Основная информация".

Я узнал, что это общий код:

 Private Sub DiagCat_AfterUpdate()
   Select Case DiagCat
     Case "Cancer [140-208]"
       DoCmd.OpenForm (Cancer_Form)
     Case "Heart Disease [393-398, 402, 410-429]"
       DoCmd.OpenForm (Heart_Disease_Form)
     Case "Stroke [430-438]"
      DoCmd.OpenForm (Stroke_Form)
     Case "Diabetes [250]"
      DoCmd.OpenForm (Diabetes_Form)
     Case "Hypertension [401]"
      DoCmd.OpenForm (Hypertension_Form)
    Case "Liver Disease [070, 571-573]"
      DoCmd.OpenForm (Elevated_Cholesterol_Form)
   End Select
 End Sub

VBA теперь выдает ошибку "Несоответствие типов" 13; ошибка выполняется в строке "Case "Cancer [140-208]"".

Спасибо. Любая помощь с благодарностью.

1 ответ

Решение

Select Case Ключевое слово - это то, что вам нужно, чтобы выбрать действие, основанное на нескольких значениях поля.

Private Sub cmdOpen_Click() 'where cmdOpen is the button control clicked to open the forms
      Select Case cmbDxCatsID 'assuming cmbDxCatsID is the name of the combobox control on the form
      Case 1
          DoCmd.OpenForm(Form1)
      Case 2
          DoCmd.OpenForm(Form2)
      'etc.........
      End Select
End Sub
Другие вопросы по тегам