2017-07-12 6 views
1

J'ai le code suivant et je voudrais le modifier un peu. Fondamentalement avec chaque case is je veux vérifier un critère secondaire. Par exemple Case is = "Lottery" je veux ajouter AND range("SalesChannel").value = "SMB". je voudrais alors reproduire que pour chaque cas utilise une valeur différente (pas SMB). cela peut-il être fait?VBA Select Case est plusieurs critères

Private Sub CommandButton1_Click() 

With LoginPassword.TextBox1.Value 
Select Case Me.TextBox1.Value 
    Case Is = "Lottery" 
     LoginPassword.Hide 
     SMB_Login 
     CalculateFinancials 
    Case Is = "Charity" 
     LoginPassword.Hide 
     DCS_Login 
     CalculateFinancials 
    Case Is = "Curfew" 
     LoginPassword.Hide 
     Campaign_Login 
     CalculateFinancials 
    Case Is = "Europe" 
     LoginPassword.Hide 
     Eureka_Login 
     CalculateFinancials 
    Case Is = "Promo" 
     LoginPassword.Hide 
     Promo_Login 
     CalculateFinancials 
    Case Is = "Sundew" 
     LoginPassword.Hide 
     Loyalty_Login 
     CalculateFinancials 
    Case Is = "Casino" 
     LoginPassword.Hide 
     MobilePricing.Hide 
     Range("Network").ClearContents 
    Case Is = "RedDevil" 
     HardwareUpdateYesNo 
    Case Is = "Provision" 
     LoginPassword.Hide 
     MobilePricing.Hide 
     ProvisioningView 
    Case Else 
     MsgBox "Password Incorrect!", vbCritical + vbOKOnly, "Login Failed!" 
     TextBox1.Text = "" 
     TextBox1.SetFocus 
End Select 
End With 

End Sub 

Répondre

1

Ceci est un exemple de cas Sélectionnez avec plusieurs critères:

Option Explicit 

Public Sub TestMe() 

    Select Case True   
     Case 1 = 1 And True 
      Debug.Print 1 
     Case True And 2 = 5 
      Debug.Print 2 
     Case True And 5 = 5 And 6 = 7 
      Debug.Print 3 
    End Select 

End Sub 

Dans votre cas, vous devez simplement écrire vos conditions au lieu de 1=1 ou True. Comme ceci: Case Me.TextBox1.Value = "Lottery" and range("SalesChannel").value = "SMB" Mais laissez Select Case True sur le dessus.

+1

Merci beaucoup pour cela. Cela fonctionne parfaitement –

+0

@PeterMogford - bienvenue :) – Vityata