Valider des données dans BD

  • Initiateur de la discussion Initiateur de la discussion alain18
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

alain18

XLDnaute Occasionnel
Boujour à tous,
Je reviens vers vous suite à mes premiers travaux de mise en place d'une BD avec saisie de résultats.
Le fichier joint résume cette BD où je souhaiterais valider un résultat de points à l'aide d'un bouton de commande. Mais ne connaissant pas le VBA (exepté faire quelques macros...) je viens vers le forum car je pense qu'il n'y a pas de formules qui permettent de faire ce genre de chose.
Plus d'explications dans le fichier.
Par avance merci de votre aide et vos conseils.

Ci-joint:
Cijoint.fr - Service gratuit de dépôt de fichiers
 
Re : Valider des données dans BD

Bonjour Alain, bonjour le forum,

En pièce jointe ton fichier avec la macro ci-dessous :

Code:
Sub valider()
Dim s As Worksheet 'déclare la variable s (onglet Saisie)
Dim b As Worksheet 'déclare la variable b (onglet BD)
Dim c As Byte 'déclare la variable c
Dim col As Byte 'déclare la variable col (COLone)
Dim l As Integer 'déclare la variable l
Dim lig As Integer 'déclare la variable lig (LIGne)
Set s = Sheets("saisie") 'définit l'onglet
Set b = Sheets("BD") 'définit l'onglet
For c = 7 To b.Range("IV2").End(xlToLeft).Column 'boucle de 7 à dernière colonne utilisée
    If s.Range("B8") = CDate(b.Cells(2, c)) Then 'condition si la date de la cellule (ligne 2, colonne c) correspond,
        col = c 'définit la colonne
        Exit For 'sort de la boucle
    End If 'fin de la condition
Next c 'prochaine colonne de la boucle
For l = 9 To b.Range("D65536").End(xlUp).Row 'boucle de 9 à la dernière ligne utilisée
    If s.Range("B12").Value = b.Cells(l, 4).Value Then 'condition si le nom de la cellule (ligne l, colonne c) correspond,
        lig = l 'définit la ligne
        Exit For 'sort de la boucle
    End If 'fin de la condition
Next l 'prochaine ligne de la boucle
b.Cells(lig, col).Value = s.Range("F4").Value 'récupère la donnée la donnée
If MsgBox("Désirez-vous continuer ?", vbYesNo, "Validation") = vbYes Then 'condition : si oui au message
    s.Range("D4").Value = "" 'vide la "place"
    s.Range("B12").Value = "" 'vidde le "nom-prénom"
    s.Range("D4").Select 'place le curseur sur la "place"
End If 'fin de la condition
End Sub
 

Pièces jointes

Re : Valider des données dans BD

Bonjour Robert,
Merci de ce travail remarquable. Je vais essayer de "comprendre"....chaque ligne afin de pouvoir l'adapter à mon projet.
J'aurai peut ètre d'autres questions pour affiner certains points, alors je reviendrai vers vous sans doute et toute la communauté du forum qui nous permet de progresser...
Merci.
A bientôt.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
578
Retour