If Form9.Option1(2) = True And Form9.Option2(1) = True Then 
                  fff = False
                    For dd = 0 To 36
                       For j = dd + 1 To 36
                    
                         For n = j + 1 To 36
                        If Form9.Check1(dd).Value = 1 And Form9.Check1(j).Value = 1 And Form9.Check1(n).Value = 1 Then
                       
                      
                    
                        If Not (ww(dd) <> mi(dd) Or ww(j) <> mi(j) Or ww(n) <> mi(n)) And Form9.Check1(dd).Value Then fff = True
    
                              End If
                        Next
                    Next
                    Next
                  
                    If fff = False Then
                        MSFlexGrid1.RemoveItem i
                        End If
                End If
怎么优化能减少循环或快一点

解决方案 »

  1.   

    For循环内读控件属性用变量代替.If Form9.Option1(2) = True And Form9.Option2(1) = True Then 
                      fff = False                   dim Chkval(36)%
                      for i= 0 to 36
                          Chkval(i)=Form9.Check1(i).Value 
                      next 
                        For dd = 0 To 36 
                          For j = dd + 1 To 36 
                        
                            For n = j + 1 To 36 
                            If Chkval(dd)= 1 And Chkval(j)= 1 And Chkval(n)= 1 Then 
                          
                          
                        
                            If Not (ww(dd) <> mi(dd) Or ww(j) <> mi(j) Or ww(n) <> mi(n))  Then fff = True           
        
                                  End If 
                            Next 
                        Next 
                        Next 
                      
                        If fff = False Then 
                            MSFlexGrid1.RemoveItem i 
                        End If 
                    End If