Procédure avec msgbox et userform délicate

nounbxl76

XLDnaute Occasionnel
Bonjour à tous,

Je vous sollicite une nouvelle fois car je rencontre de nombreux obstacles sur un petit projet de suivi d'outils et notamment du temps d'utilisation de ceux-ci...
A partir de données saisies sur une feuil1, je souhaite déclencher une procédure qui ira m'alimenter une feuille "suivi". Même si je fournis un petit fichier explicatif, j'apporte quelques précisions:

1. Déclenchement de la procédure (aujourd'hui par un bouton :( ):
Je souhaiterais déclencher la procédure si je saisi, dans la colonne C, E, G ou I de la ligne de saisie, une des valeurs surlignés en jaune dans la colonne Q et si la ligne est vide au niveau de la colonne K de la feuil1.

2. La procédure:
elle se compose d'un msgbox puis d'un userform. Si je répond "oui" au message alors déclenchement de l'USF. Là où ça se complique, c'est qu'en fonction de la valeur sélectionné dans mon combo, je souhaite alimenter la feuille "suivi" de différentes choses:
- indique le 1er déclenchement(dd/mm/yyyy hh:mm) de la procédure pour cet outil en colonne B.
- indique le déclenchement actuel (dd/mm/yyyy hh:mm) de la procédure pour cet outil en colonne C
- incrémente le temps cumulé d'utilisation ([h]:mm) pour cet outil en colonne D de 1:30 (c'est le temps d'utilisation par défaut. A partir du moment où je déclenche la procédure pour cet outil, je sais qu'il a été utilisé 1h30).
- renvoie la référence de l'outil utilisé (donc sélectionné dans le combobox) en colonne K de la ligne
- le cas échéant, indique si un outil a été utilisé sur un produit où il ne devait pas par msgbox (selon colonne Q et R de la feuil1). Ex : "ATTENTION vous avez utilisé l'outil W pour un DIP1 alors que ce n'est pas prévu".

Je ne sais pas si tout ça est très clair alors je joins un petit fichier.
Merci par avance pour vos lumières.

Bien cordialement.
 

Pièces jointes

  • Classeur2.xls
    82.5 KB · Affichages: 71
  • Classeur2.xls
    82.5 KB · Affichages: 66
  • Classeur2.xls
    82.5 KB · Affichages: 67
C

Compte Supprimé 979

Guest
Re : Procédure avec msgbox et userform délicate

Bonjour,

Pour la première partie, voici le code à mettre dans "Feuil1"
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect(Range("C6:C15,E6:E15,G6:G15,I6:I15"), Target) Is Nothing Then
    If Range("K" & Target.Row).Value = "" Then
      If MsgBox("S'agit-il d'un cycle de type1 contenant des outils ?", _
        vbYesNo + vbQuestion, "Cycle") = vbYes Then
          UserForm1.Show
      End If
    End If
  End If
End Sub

La suite n'est pas très simple à comprendre !?

A+
 

nounbxl76

XLDnaute Occasionnel
Re : Procédure avec msgbox et userform délicate

Re,

Merci Bruno45 pour ta réponse sur le déclenchement.

Pour le reste, c'est vrai que c'est un peu tordu mais nécessaire...
Voici un peu d'explications complémentaires à partir du moment où l'usf est affiché:
- Mon combo est constitué des valeurs de la colonne A sur la feuille "Suivi".
- Suivant la valeur que je sélectionne sur ce combo, je vais devoir retranscrire différentes infos sur cette feuille "suivi":
1. la date et l'heure du premier déclenchement de la procédure pour la valeur du combo (ceci m'indiquera en fait quand a été utilisé l'outil A pour la 1ère fois) - en colonne B
2. la date et l'heure du dernier déclenchement de la procédure pour la valeur du combo (ceci m'indiquera en fait quand a été utilisé l'outil A pour la dernière fois) - en colonne C.
3. une incrémentation du compteur temps cumulé de 1h30. Il s'agit en fait de mesurer la durée de vie de l'outil. En gros, si je l'ai utilisé donc sélectionné 1x, ça me donne 1h30 d'utilisation. Si je l'ai utilisé donc sélectionné 2x, ça me donner 3h00 d'utilisation, etc...
4. en colonne K de la ligne à partir de laquelle la procédure s'est déclenchée, je retranscrit la valeur du combo.

J'ai fait un petit update du fichier explicatif et notamment de la feuille"EXEMPLE" pour + d'explications (en commentaires, espérons-le, + claires... ;)

Merci encore.

PS : mon principal problème à régler porte surtout sur l'incrémentation du compteur temps d'utilisation. En gros, je dois m'assure qu'à chaque que l'outil sera sélectionné (combo+USF), sa durée de vie sera augmentée de 1h30...
 

Pièces jointes

  • Classeur2-2.xls
    96 KB · Affichages: 64
  • Classeur2-2.xls
    96 KB · Affichages: 71
  • Classeur2-2.xls
    96 KB · Affichages: 65

Bebere

XLDnaute Barbatruc
Re : Procédure avec msgbox et userform délicate

bonjour Nounbxl,Bruno
comme il faut un début,un essai
à bientôt
 

Pièces jointes

  • Classeur2-2.xls
    108 KB · Affichages: 67
  • Classeur2-2.xls
    108 KB · Affichages: 63
  • Classeur2-2.xls
    108 KB · Affichages: 63

nounbxl76

XLDnaute Occasionnel
Re : Procédure avec msgbox et userform délicate

Bonsoir BrunoM45, bonsoir Bebere et bonsoir le forum,

Je suis désolé de revenir si tard mais je devais me conformer à quelques obligations familiales de premier ordre...Mais aujourd'hui, j'ai eu un peu de temps au boulot pour gamberger le sujet et je dois dire que je cherchais un peu à faire une mini usine à gaz...Du coup, je joins un nouveau petit fichier explicatif plus light.
J'ai donc choisi d'oublier les dates et heures de déclenchement des macros. En revanche, je souhaite toujours maintenir l'incrémentation du temps d'utilisation des outils (1h30 soit 90min) et le report de la valeur sélectionné dans le combo. Sur le fichier joint, vous pourrez donc voir 5 déclenchements de procédure décortiqués (5 onglets) afin de mieux exprimer mon besoin.
En ce qui concerne le déclenchement de la macro avec saisie dans les colonnes "produit" fournie par BrunoM45 (utilisation de worksheet_change), j'aimerais savoir s'il était possible que celle-ci ne soit effective uniquement lorsque les cellules contiennent une valeur et pas seulement quand il y a un worksheet change (Ex : la procédure se déclenche quand je supprime une de ces cellules donc pas vraiment adéquate).

En vous remerciant une nouvelle fois, je vous souhaite une bonne soirée.
 

Pièces jointes

  • Classeur2-3.xls
    132.5 KB · Affichages: 55
  • Classeur2-3.xls
    132.5 KB · Affichages: 52
  • Classeur2-3.xls
    132.5 KB · Affichages: 58

nounbxl76

XLDnaute Occasionnel
Re : Procédure avec msgbox et userform délicate

Vous avez tout à fait raison Bebere, autant pour moi !
En fait, je n'ai pas pu exploiter la proposition faite dans la mesure où le userform remodelé était malheureusement vide de contenu et il y a eu un bug au final. De plus, je pense que mon besoin était bien trop mal exprimé et surtout la finalité de ce projet peut-être trop "risquée" pour une utilisation de routine. De fait, et toujours selon une volonté d'apprendre et me former par l'entraide du forum, j'ai refaçonné un besoin plus explicite et plus modéré.

Toutes mes excuses à nouveau.
 

Bebere

XLDnaute Barbatruc
Re : Procédure avec msgbox et userform délicate

nounbxl
mis quelques notes dans fichier
rmq: les listes de validation n'ont pas besoin de contenir tous les produits
 

Pièces jointes

  • Classeur2-3.xls
    134.5 KB · Affichages: 42
  • Classeur2-3.xls
    134.5 KB · Affichages: 44
  • Classeur2-3.xls
    134.5 KB · Affichages: 49

nounbxl76

XLDnaute Occasionnel
Re : Procédure avec msgbox et userform délicate

Bonjour Bebere, Bonjour le forum,

Encore une fois merci pour ce coup de pouce. Je dois dire que mes attentes sont là et ma compréhension aussi.
En fait, si je souhaitais alimenter mon combobox avec la liste figurant dans la feuil "Suivi" et donc passer par une liste de validation complète, c'était pour faciliter l'ajout de nouveaux outils sans que je n'ai à revoir le code (en gros, on peut ajouter une ligne sans trop de conséquence).
De plus, je dois laisser le choix de tous les outils dans le combo car malheureusement certaines dérives ont lieu. En effet, certains outils sont utilisés bien qu'il ne soient pas autorisés sur le produit sélectionné.
En résumé, serait-il possible que ce combo soit alimenté par la liste de la feuil "Suivi" et qu'en fait ce soit la macro qui "analyse" les données sélectionnés dans ce combo?
A savoir
- si je sélectionne A, J, K, L pour le produit 1
- si je sélectionne V, W, X, U pour les produits 2 à 13
- si je sélectionne Q, R, S, T pour les produits 14 à 19
>>> la procédure se déroule normalement.
- en revanche, si je sélectionne V, W, X, U, Q, R, S, T pour le produit 1
- si je sélectionne A, J, K, L, Q, R, S, T pour les produits 2 à 13
- si je sélectionne A, J, K, L, V, W, X, U pour les produits 14 à 19
>>> la procédure se déroule mais 1 message box me signale que j'ai utilisé un outil non autorisé.

Merci encore pour votre aide. Bonne journée.
 

Pièces jointes

  • Classeur2-4.xls
    134.5 KB · Affichages: 52

Discussions similaires

Réponses
2
Affichages
272

Statistiques des forums

Discussions
312 330
Messages
2 087 338
Membres
103 524
dernier inscrit
Smile1813