CLOSED读取if语句的多个条件

时间:2017-02-16 07:19:32

标签: vba

我试图使所有语句都可读,并且程序应该读取每个条件。这是一个错误,我以某种方式意识到它,因为我使用if当然它不会经历每个条件。但我卡住了,因为我不知道如何解决这个问题

 'I want to state two condition (A) and (B) thats why I am using IF and 
 'ELSE. but inside (B) i want to pass through first, second, and third 
 'condition

    '(A)

    If tmpRS2.EOF Then 
        tmpRS2.AddNew
        tmpRS2.Fields("ADPS_CD").Value = KOM_04
        tmpRS2.Fields("ADPS_NAME").Value = KOM_14 & KOM_05 & KOM_06
        tmpRS2.Update
        YC = YC + 1

    ' (B) The problem starts here ---->               

    Else  'it will not go through each one of the condition, 

          'first condition

         If KOM_14 & KOM_05 & KOM_06 <> tmpRS2.Fields("ADPS_NAME").Value Then  
            tmpRS2.DbEdit
            tmpRS2.Fields("ADPS_NAME").Value = KOM_14 & KOM_05 & KOM_06
            tmpRS2.Update
            UC = UC + 1

         Else
             'second condition

             If KOM_14 & KOM_05 & KOM_06 <> tmpRS2.Fields("SCT_NAME").Value Then 
                tmpRS2.DbEdit 
                tmpRS2.Fields("SCT_NAME").Value = KOM_14 & KOM_05 & KOM_06
                tmpRS2.Update
                UC = UC + 1
             Else

                     'third condition

                     If KOM_14 & KOM_05 & KOM_06 <> tmpRS2.Fields("DIV_NAME").Value Then 
                        tmpRS2.DbEdit
                        tmpRS2.Fields("DIV_NAME").Value = KOM_14 & KOM_05 & KOM_06
                        tmpRS2.Update
                        UC = UC + 1
                     End If
         End If

    End If

1 个答案:

答案 0 :(得分:0)

使用ElseIf:

If tmpRS2.EOF Then 
      '.....
ElseIf KOM_14 & KOM_05 & KOM_06 <> tmpRS2.Fields("ADPS_NAME").Value Then
      '.....
ElseIf KOM_14 & KOM_05 & KOM_06 <> tmpRS2.Fields("SCT_NAME").Value Then
      '.....
ElseIf KOM_14 & KOM_05 & KOM_06 <> tmpRS2.Fields("DIV_NAME").Value Then
      '.....
End If