Case à cocher et msgBox
#1
Régulier XLPages

Inscription: 05/11/2008

Messages: 53

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 06-12-2008 22h33
Bonjour à tous,
Sur mon fichier, j'ai ajouté des cases à cocher mais voilà je n'arrive pas à trouver le code adéquat.
Je souhaite donc :
* trouver une formule après avoir coché une des cases c'est à dire que si on coche 24 (mois), il doit calculer "date de décision" + 24 mois et mettre le résultat dans la case "fin de travaux". La même chose pour 36 (mois).
* ajouter un msgbox lors de la recherche si la convention n'existe pas : "La convention n'existe pas !".
Je joins mon fichier.
Merci d'avance pour votre aide.



Pièce jointe:
zip SUIVI CONVENTIONS.zip   [ Taille: 50.33 Ko - Téléchargements: 521 ]
Hors Ligne
Rapport   Haut 

Re: Case à cocher et msgBox
#2
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 07-12-2008 00h33
Bonsoir Kelly,

Tu trouveras ci-joint ton classeur modifié en conséquence.

Pour les OptionButtons
- J'ai commencé par renommer tes OptionButtons en opt24 et opt36 pour ajouter de la clarté au projet.
- J'ai ensuite prédéfini opt24 à True par défaut (avec les OptionButtons, il en faut toujours un par défaut).
- Ensuite, j'ai ajouté les lignes suivantes à l'évènement Private Sub Valider_Click() dans le module de code du Userform :
If IsDate(DateDécision.Value) Then
    Range("M" & Derlig).Value = DateAdd("m", IIf(opt24.Value, 24, 36), DateDécision.Value)
End If

Pour le message d'alerte "Convention non trouvée"
- J'ai modifié ta procédure SearchNom() comme suit :
Sub SearchNom()
Dim R As Range
Dim Var As String

    Var = InputBox(Prompt:="Que recherchez-vous ?", Title:="Recherche d'une convention")
   
    If Var = "" Then Exit Sub   'clic sur Annuler
    Set R = Cells.Find(What:=(Var), After:=ActiveCell, _
        LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder _
        :=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
        )
    If Not R Is Nothing Then
        R.Select
    Else
        MsgBox "La convention n'existe pas !"
    End If
End Sub


Deux remarques si tu le permets :

- Renommer les contrôles est une bonne idée, tu l'as fait d'ailleurs (sauf pour les OptionButtons). Toutefois, pour les noms d'objet, comme pour les variables, les caractères accentués sont toujours déconseillés. Tu devrais remplacer ChargéOpérations par ChargeOperations (sans accent) par exemple.

- Je te conseille vivement de lire l'article VBA et les variables, d'utiliser Option Explicit et de déclarer TOUTES tes variables (dans le bon type). Par ailleurs, par convention, les déclarations de variable se font toujours en tête de procédure (et non au milieu du code).

Cordialement,
Pièce jointe:
zip PourKelly.zip   [ Taille: 51.13 Ko - Téléchargements: 610 ]

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Case à cocher et msgBox
#3
Régulier XLPages

Inscription: 05/11/2008

Messages: 53

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 07-12-2008 01h27
Bonsoir myDearFriend !
Merci de m'avoir aidé et merci pour tes conseils qui sont les bienvenus !
J'ai changé mes noms d'objets avec les accents !
Demain je vais lire l'article VBA et variables !!!!
Merci encore !
Cordialement,
Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes