Important:traitement d'un emploi du temps

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 !

rainbow69006

XLDnaute Occasionnel
Bonjour

J'ai un emploi du temps avec des cellules grise.
par contre celle la n'apparaissent pas dans l'ordre

Je vous joint mon fichier cela sera beaucoup plus clair

Merci beaucoup de votre aide
 

Pièces jointes

Re : Important:traitement d'un emploi du temps

Bonjour à tous,

Comment veux-tu trier tes lignes, sur quels critères.
Tu ne donnes aucune indication...

Tu voulais un "rangement dans l'ordre", tu l'as par ajout d'une colonne... et d'un bouton GO

Donne plus explications, c'est aussi très important...

A+
 
Dernière édition:
Re : Important:traitement d'un emploi du temps

Bonsoir rainbow, JC

si j'ai compris (????), peut-être sur le fichier joint....

Code:
Sub tri_gris()
Application.ScreenUpdating = False
Columns("A:A").Insert Shift:=xlToRight
For Each cel In Range(Cells(4, 6), Cells([B65000].End(xlUp).Row, [IV3].End(xlToLeft).Column))
    If cel.Interior.ColorIndex = 15 Then Cells(cel.Row, 1).Value = cel.Column - 5
Next cel
    Range(Cells(4, 1), Cells([B65000].End(xlUp).Row, [IV3].End(xlToLeft).Column)).Sort _
        Key1:=Range("A4"), Order1:=xlAscending, Header:=xlGuess
    Columns("A:A").Delete Shift:=xlToLeft
End Sub
 

Pièces jointes

Re : Important:traitement d'un emploi du temps

Re-,
c'était pas marqué, le format conditionnel....😡

remplace la ligne :

Code:
If cel.Interior.ColorIndex = 15 Then Cells(cel.Row, 1).Value = cel.Column - 5
Next cel

par :

Code:
If cel.Value = 1 Then Cells(cel.Row, 1).Value = cel.Column - 5
Next cel
 
Re : Important:traitement d'un emploi du temps

Oui desoler je ne pensais pas que cela aller changer quelque chose.

Le code marche parfaitement!!!

par contre je voudrais rajouter 3 collones du meme type a mon tableau
et je ne vois pas ce qu'il faut changer pour que sa les prennent en compte
J'ai essayer de changer
Range(Cells(4, 6) en Range(Cells(4, 9)
Mais visiblement ce n'etais pas sa

merci
 
Re : Important:traitement d'un emploi du temps

Re-,
normalement, avec cette ligne :

Code:
For Each cel In Range(Cells(4, 6), Cells([B65000].End(xlUp).Row, [IV3].End(xlToLeft).Column))

même en rajoutant une (ou des) colonne(s), c'est pris en compte, pour peu que les titres (1er, 2ème...) soient sur la ligne 3
je pars de la cellule la plus à droite ([IV3]), et je cherche le numéro de la première colonne non vide vers la gauche. Dons, si elles sont bien sur la ligne 3 et remplies, il ne devrait pas y avoir de problème...
 
Re : Important:traitement d'un emploi du temps

Eh oui mes titres n'etais pas sur la ligne 3 je suis bete!!!

par contre la ligne 4 n'est pas prise en compte!

J'ai changer dans ton code tout les 4 en 3 et sa a l'air de marcher

Merci
 
Dernière édition:
- 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
33
Affichages
876
Réponses
1
Affichages
83
  • Question Question
Microsoft 365 Carte géogrpahique
Réponses
6
Affichages
245
Réponses
4
Affichages
211
Retour