Autoriser certain chiffre une seule fois par colonne

Bonjour a tous !

Je suis en train de faire un petit programme pour suivre la saison de F1 2011 et je voulais savoir si il était possible d'interdire certain chiffre d'apparaitre plusieurs fois dans une colonne .

Je m'explique : à la fin d'un grand prix il est impossible que deux pilotes aient 25 point (de même pour 18, 15, 12, 10, 8 , 6, 4, 2 et 1 points), en revanche il est possible que plusieurs pilotes aient 0 points (du 11ème au dernier).

Ce que j'aimerais c'est que lorsque j'ai déjà sélectionner 25 points pour un grand prix (dans une petite liste déroulante) je ne puisse plus le faire (message d'erreur par exemple).

Voici mon fichier :

Merci d'avance !

(P.S : si je n'ai pas été suffisamment clair dite le moi ! )

Bonjour,

Dans un Module

Option Explicit
Public Flag As Boolean
Sub Raz()
Flag = True
    Range("E3:W26").ClearContents
Flag = False
End Sub

Dans le VBE de la feuille

Private Sub Worksheet_Change(ByVal Target As Range)
'Macros par Claude Dubois pour "Gallardo29" Excel-Pratique le 20/03/11
If Flag Then Exit Sub
Dim Lg%, cL%
        Lg = Range("d65536").End(xlUp).Row
    If Not Application.Intersect(Target, Range("e3:w" & Lg)) Is Nothing Then
        If Target.Count > 1 Then Exit Sub
        cL = Target.Column
        If Application.CountIf(Columns(cL), Target) > 1 And Target <> 0 Then
            Flag = True
            MsgBox ("non valide !")
            Target.ClearContents
        End If
    End If
Flag = False
End Sub

Amicalement

Claude

18gallardo29-f1.xlsm (30.36 Ko)

Bonjour

Salut Claude

Autre méthode : le chiffre n'est plus proposé dans la liste s'il existe déjà dans la colonne

Amicalement

Nad

Bonjour Nad,

Très bonne solution ! je note

Bravo pour le VBA, je vois que tu t'y mets sérieusement

Amicalement

Claude

Mais c'est magnifique ! C'est exactement ce que je voulais !

Une fois de plus merci Nad et merci a toi aussi Claude !!!

En revanche j'ai encore un petit soucis : quant je protège ma feuille (en ayant bien déverrouiller les cases du tableau) et que je tente de choisir une valeur dans une des listes déroulantes j'ai ce message :

Erreur d'exécution '1004':

La cellule ou le graphique est protégé et en lecture seule.

Pour modifié une cellule ou un graphique protégé, ôter la protection avec la commande Ôter la protection de la feuille...

Si je met fin, je peut mettre des valeurs mais je peut de nouveau mettre plusieur fois 25, 18...

Je lance donc le débogueur et il me met la ligne suivante en jaune : [ListeDispo].ClearContents

Voici mon fichier :

Merci d'avance !

(P.S: le mot de passe est 1234)

re,

Il me semblait bien avoir vu le poste en "Résolu" mais .... !

ajoute dans le ThisWorkbook (Open)

Private Sub Workbook_Open()
    With Worksheets("F1")
        .Activate
        .Protect Password:="1234", UserInterfaceOnly:=True
    End With
End Sub

ferme et re-ouvre

Amicalement

Claude

C'est parfait, merci à toi Claude !

Oui j'avais effectivement mis le sujet en résolu mais je me suis aperçu du problème après et au lieu de créer un nouveau topic j'ai préférer éditer mon message.

Tu as très bien fait !

à la prochaine

Claude

Rechercher des sujets similaires à "autoriser certain chiffre seule fois colonne"