XL 2016 Effacement et rangement

ChantalTreize

XLDnaute Occasionnel
Bonjour tout le monde,

Je vous ai mis mon fichier EXCEL en pièce jointe, je vous explique :

Ce fichier sert au suivi de dossiers que je dois créer, les gens viennent remplir les 6 premières colonnes des tableaux et me donnent des priorités (colonne N°2) dans les dossiers en attente de création. Moi je rempli le reste du tableau et quand le dossier est créée je mets « CLOS » dans la dernière colonne.

Ce que j’aimerais c’est que la cellule priorité se vide dès que je mets « CLOS » dans la cellule Etat. Et dans l’idéal j’aimerais que la colonne Priorité se réorganise dès qu’un dossier urgent a été traité (Ex : lorsque la priorité N°1 disparaît, que la priorité N°2 passe à 1, que la priorité N°3 passe à 2, etc…….). Tout cela est-il possible ??

Merci d’avance.
Chantal
 

Pièces jointes

  • Jura.xlsm
    260.3 KB · Affichages: 9

Dranreb

XLDnaute Barbatruc
Bonjour.
À tester, dans le module Feuil16 (2020) :
VB:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
   Dim ColPrio As Range, TPrio(), LCou As Long, PCou As Long, L As Long, P As Long
   If Intersect([Tableau4[Etat]], Target) Is Nothing Then Exit Sub
   If Target.Value <> "CLOS" Then Exit Sub
   Set ColPrio = [Tableau4[Priorité]]
   TPrio = ColPrio.Value
   LCou = Target.Row - ColPrio.Row + 1
   PCou = TPrio(LCou, 1): TPrio(LCou, 1) = Empty
   For L = 1 To UBound(TPrio, 1)
      Select Case TPrio(L, 1)
         Case PCou: ColPrio.Rows(LCou).Value = Empty: Exit Sub
         Case Is > PCou: TPrio(L, 1) = TPrio(L, 1) - 1
         End Select
      Next L
   ColPrio.Value = TPrio
   End Sub
Remarque: ne laissez pas de lignes vides dans les plages mises sous forme de tableaux. Ça va à l'encontre de leur philosophie de principe, laquelle inclut toutes facilités nécessaires à l'ajout de nouvelles lignes requises, à renseigner.
 
Dernière édition:

Jacky67

XLDnaute Barbatruc
Bonjour à tous,
Un exemple sur le deuxième tableau en PJ
L'ordre de priorité(position) doit être adapter selon les besoins dans [etat], "clos" doit être en dernière position
Ps:Les tableaux structurés ne doivent pas contenir des lignes vides, le tableau se met à jour automatiquement à la saisie sur la ligne du dessous
 

Pièces jointes

  • Jura.xlsm
    254.9 KB · Affichages: 14
Dernière édition:

ChantalTreize

XLDnaute Occasionnel
Bonjour.
À tester, dans le module Feuil16 (2020) :
VB:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
   Dim ColPrio As Range, TPrio(), LCou As Long, PCou As Long, L As Long, P As Long
   If Intersect([Tableau4[Etat]], Target) Is Nothing Then Exit Sub
   If Target.Value <> "CLOS" Then Exit Sub
   Set ColPrio = [Tableau4[Priorité]]
   TPrio = ColPrio.Value
   LCou = Target.Row - ColPrio.Row + 1
   PCou = TPrio(LCou, 1): TPrio(LCou, 1) = Empty
   For L = 1 To UBound(TPrio, 1)
      Select Case TPrio(L, 1)
         Case PCou: ColPrio.Rows(LCou).Value = Empty: Exit Sub
         Case Is > PCou: TPrio(L, 1) = TPrio(L, 1) - 1
         End Select
      Next L
   ColPrio.Value = TPrio
   End Sub
Remarque: ne laissez pas de lignes vides dans les plages mises sous forme de tableaux. Ça va à l'encontre de leur philosophie de principe, laquelle inclut toutes facilités nécessaires à l'ajout de nouvelles lignes requises, à renseigner.

Un grand merci pour la soluce ça m'aide grandement
Merci Chantal
 

Discussions similaires

Réponses
8
Affichages
444

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
314 022
Messages
2 104 732
Membres
109 116
dernier inscrit
RALAIZANAKA