Tester 3 conditions

chiken-little Messages postés 145 Date d'inscription   Statut Membre Dernière intervention   -  
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je voudrais savoir dans VB sur excel comment tester 3 condition (par exemple, si le nom a déjà été entré + le prénom déjà entré + le code postal déjà entré)

Comment procéder à ca sur visual basic ?

Merci d'avance pour vos réponses.
A voir également:

4 réponses

ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

En supposant que les variables nom, prenom, codepostal ont été affectées (par ex : nom = Cells(linom, liprenom) )
If nom<> "" and prenom <> "" and codepostal <> "" then
ton traitement
else
message d'erreur
end if

Cdlmnt
0
chiken-little Messages postés 145 Date d'inscription   Statut Membre Dernière intervention  
 
Je met ca directement dans le code VBA ?
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Oui, à adapter bien sur
Peux tu donner le code de la procedure ?
0
chiken-little Messages postés 145 Date d'inscription   Statut Membre Dernière intervention  
 
Car en fait j'ai des private sub nom_beforeUpdate, ... private sub prenom_beforeUpdate, et donc dans quel procedure je doit mettre ca ?
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Perso, je mettrai un bouton btOK qui va tester les textbox avec quelque chose comme ça

Private Sub btOK_Click()
If tbNom.Text = "" Or tbPrenom.Text = "" Or tbCodePostal.Text = "" Then
MsgBox "Données incomplètes"
Else
MsgBox "Suite de la procedure"
End If
End Sub

Cdlmnt
0
chiken-little Messages postés 145 Date d'inscription   Statut Membre Dernière intervention  
 
Mais en fait, cette recherche de condition s'effectue dans une base de donnée, donc quand j'entre mes champs du userform, celà recherche si celà n'a pas déjà été entré
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
OK, ça change tout
En fait, tu entres tes coordonnées via ton UF, et tu veux tester si le contact existe dans ta BD, c'est ça ?
Il te faut utiliser la méthode Find sur la colonne des noms de ta BD, si le nom existe tu récupères la ligne correspondante et tu testes dans cette ligne si le prénom et le code sont identiques à ceux saisis
Cdlmnt
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Re,

Quelque chose dans ce gout là derrière le bouton OK

Private Sub btOK_Click()
Dim nom, prenom, codepostal, celnom As Object
Dim linom As Long
  If tbNom.Text = "" Or tbPrenom.Text = "" Or tbCodePostal.Text = "" Then
    MsgBox "Données incomplètes"
  Else
    nom = tbNom.Text
    prenom = tbPrenom.Text
    codepostal = tbCodePostal.Text
    With ActiveSheet
      Set celnom = Sheets("BD").Columns("A:A").Find(nom, , , xlWhole)
      If celnom Is Nothing Then
        MsgBox nom & "n'est pas dans la BD"
        ' suite du traitement
      Else
        linom = celnom.Row
        If Sheets("BD").Range("B" & linom).Value <> prenom Or Sheets("BD").Range("C" & linom).Value <> codepostal Then
           MsgBox nom & " " & prenom & " " & codepostal & " n'est pas dans la BD"
           ' suite du traitement
        Else
           MsgBox nom & " " & prenom & " " & codepostal & " est déjà dans la BD"
           ' suite du traitement
        End If
      End If
    End With
  End If
End Sub

Cdlmnt
0