Cellule valeur selon conditions

Résolu
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   -  
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   -
bonjour
j'aurais besoin de votre aide pour mon probleme
si vous cliquez sur les colonnes de V a AC vous avez la date instantanée
je voudrais avoir en colonne U l'etat ou en est la voiture dans l'avancement du travail (comme j'ai marque a la main les cellules U2:U5 pour exemple)
et dans les colonnes AD:AG le temps passé comme marqués
en ce moment.
Mais si possible tout par macro car la feuille est amenée a etre pas mal remaniée car on rajoute tous les mois de nouvelles lignes
https://www.cjoint.com/c/CAndL41EmWG
merci de votre aide

4 réponses

  1. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    Pour la colonne U y a t il toujours cette chronologie nettoyage, Mecanique, Carrosserie et finition
    la colonne U est bien renseignée par les colonnes V, X, Z et Ab, c'est bien cela dès qu'une date est saisie dans ces colonnes le statut de la colonne U change

    pour le temps passée dans chaque état il faut en plus de la date saisir l'heure pour cela tu peux utiliser les touches de raccourci Ctrl et ; (la touche Ctrl et en même temps point virgule) tu fais un espace et Ctrl : (la touche Ctrl et en même temps double point)

    0
    1. surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
       
      bonjour
      non il faut que la valeur colonne U change au fur et a mesure de l'avancement des travaux
      les colonnes de V a AC tu fais double click et ça donne la date plus h pour pouvoir faire les calculs de temps passés en "AD:AG"
      a bientot
      0
  2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    Bonjour,

    Tu rajoutes cette macro qui devrait faire la fonction :

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("V2:AC1048576")) Is Nothing Then
        Cells(Target.Row, "U").Value = Mid(Cells(1, Target.Column).Value, InStr(1, Cells(1, Target.Column).Value, " ") + 1)
    End If
    End Sub
    


    Bonne année à tous.
    0
    1. surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
       
      Bonjour
      Bonne année
      Ca fonctionne bien
      maintenant que les 8 conditions sont remplies comment je pourrais dire la voiture est prete a livrer?
      j'avais pensé du genre si colonnes "W:AD" sont remplies ou mettre la ligne en vert ou la cellule "AJ" en vert comment faire ?
      j'ai mis "W:AD" car depuis l'exemple j'ai rajouté une colone
      heu en passant c'est quoi la formule precedente ? ça recopie la valeur de dessus?
      merci
      a bientot
      0
    2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
       
      Bonjour

      c'est quoi la formule precedente ?

      La formule prend en ligne 1 du tableau le libellé que tu mettais manuellement en fonction de la colonne saisie.
      0
    3. surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
       
      bonjour
      ok je comprends
      comment faire une alerte quand dans la colonne"T " qui sont des dates si on essaye de rentrer 5 véhicules la même date un userform avertisse de pas mettre a cette date car il faut pas plus de 5? j'ai meme vu qu'on peut faire clignoter lol
      merci de votre aide
      a bientot
      0
    4. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
       
      bonjour,

      Tu peux le faire tout simplement avec une formule de validation avec message d'erreur :
      =NB.SI(A:A;A1)<=5
      0
    5. surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
       
      bonjour
      Ah ok oui je vois mais tu veux dire =NB.SI(T:T;T1)<=5 vu que les dates sont en colonne T?
      ou je me trompe encore
      merci
      0
  3. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    pour ne pas te perturber et continuer à travailler sur le code Gbinforme que je salue, tu peux simplement modifier le code comme ceci
    Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("V2:AB1048576")) Is Nothing Then
    Cells(Target.Row, "U").Value = Mid(Cells(1, Target.Column).Value, InStr(1, Cells(1, Target.Column).Value, " ") + 1)
    End If
    If Not Intersect(Target, Range("AC2:AC1048576")) Is Nothing Then
    Cells(Target.Row, "U").Value = "Prête à livrer"
    End If
    End Sub

    pour le calcul du temps passé dans chaque atelier, tu commences par modifier le format de tes cellules de la colonne V à AC au format date avec affiche des heures
    en AD2 cette formule que tu incrementes vers le bas et tu adaptes aux colonnes AE à AG

    =SI(ET(V2="";W2="");"";W2-V2)
    0
  4. surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
     
    bonjour
    merci de votre aide c'est impec dans temps total j'additionne c'est tout?
    =SOMME(AE2:AH2) format heures
    le format est bon dans l'exemple il affiche les dates mais les h sont bien la ou je me trompe?
    maintenat je formate ma ligne
    si "etat actuel= "pret a livrer" je mets la ligne en rouge ou c'est possible avec macro.
    merci
    a bientôt
    0