Validation de 2 champs excel

Résolu
Bonjour,

j'aimerais dans ma table enrégistrement excel verifier si mon bateau a deja débarqué a cette date lors de l'entrée de donnée

verifier par exemple b6(date) et b8(bateau) si champ existe dans la table enregistrement par la suite je continue l'entre de mes donnees.

Voici un exemple de mon fichier: https://www.cjoint.com/?AGergxfNjwO

merci de votre aide

4 réponses

  1. merci beaucoup de votre aide sa fonctionne
    0
    1. Contributeur
      Re le forum

      Ghislaine, dans ton autre ficelle, j'ai remarquer que tu avais mal recopié mon code.

      Ton enregistrement ce fait en double.

      Cette section est inutile à la suite de mon code

          Sheets("BD enr").Select
          Rows("2:2").Select
          Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
          Range("A2").Select
          Sheets("Ajout d'enrégistrement").Select
          Range("A2:i2").Select
          Selection.Copy
          Sheets("BD enr").Select
          Range("A2").Select
          Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
              SkipBlanks:=False, Transpose:=False
          Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
              :=False, Transpose:=False
          Sheets("Ajout d'enrégistrement").Select
          
         Range("B6").Select
      


      Mytå
      0
  2. Contributeur
    Salut le forum

    Le code de la macro adapté à ta demande.

    Sub enrenr() 
    ' 
    ' enrenr Macro 
    ' 
    With Sheets("BD enr").Range("E:E") 
        Set c = .Find(Range("B8"), LookIn:=xlValues) 
        If Not c Is Nothing Then 
            firstAddress = c.Address 
            Do 
                If c.Offset(0, -4) = Range("B6") Then 
                MsgBox "Bateau déjà saisie" 
                Exit Sub 
                End If 
                Set c = .FindNext(c) 
            Loop While Not c Is Nothing And c.Address <> firstAddress 
        End If 
    End With 
    
    MsgBox "Nouvelle saisie" 
    
    With Sheets("BD enr") 
        .Rows("2:2").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove 
        Range("A2:I2").Copy 
        .Range("A2").PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _ 
            SkipBlanks:=False, Transpose:=False 
        .Range("A2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ 
            :=False, Transpose:=False 
    End With 
    
    Application.CutCopyMode = False 
    
    End Sub 
    

    Mytå

    P.S. Un coin de pays que je connais bien :)

    Quelle prétention de prétendre que l'informatique est récente
    Adam et Eve avaient déjà un Apple ! [MsProject 2003(FR), Excel 2003-2007(FR)]
    0
    1. Contributeur
      Bonjour.
      Désolé, mais je n'ai pas compris "si champ existe dans la table enregistrement par la suite je continue l'entre de mes donnees" !
      Où se situe la table d'enregistrement ?
      De quel champ s'agit-il ?
      0