Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Demande d'aide pour amélioration d'écriture macro

degap05

XLDnaute Impliqué
Bonjour, j'ai besoin de votre aide pour améliorer l'écriture de cette macro.
Elle vide les cellules, trie, envoi les données de la ligne sur une autre feuille et repositionne les couleurs de la feuille.

Mais dans mon fichier de travail, je n'arrive pas bien à l'insérer, car j'ai d'autres parties de code qui commence par: If Target.Column = 26 Then, aussi j'aimerais le même libellé:

'macro vide les cellules, copie et trie les données
derlig = [A4].End(xlDown).Row
Range("A" & Target.Row & ":Z" & Target.Row).SpecialCells(xlCellTypeConstants).ClearContents
Range("A1", Cells(derlig, Target.Column)).Sort Key1:=Range("B1"), Order1:=xlAscending, Key2:=Range( _
"C1"), Order2:=xlAscending, Header:=xlNo, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom

'repositionne les couleurs de la feuille
dernligne = Range("A65536").End(xlUp).Row + 1
Range("A" & dernligne & ":" & "C" & dernligne).Interior.ColorIndex = 40
Range("D" & dernligne & ":" & "F" & dernligne).Interior.ColorIndex = 19
Range("G" & dernligne & ":" & "H" & dernligne).Interior.ColorIndex = 20
Range("I" & dernligne & ":" & "Y" & dernligne).Interior.ColorIndex = x1None
End If


Merci pour votre aide
 

Pièces jointes

  • Copie-Vide-TrieMDSH.zip
    31.1 KB · Affichages: 34

mromain

XLDnaute Barbatruc
Re : Demande d'aide pour amélioration d'écriture macro

Ce que tu peux faire pour éviter le fameux "If Target.Column = 26", c'est :

Dim tmp as Integer
tmp = Target.Column
If tmp = 26
 

mromain

XLDnaute Barbatruc
Re : Demande d'aide pour amélioration d'écriture macro

As-tu essayé de faire ça :

Dim tmp as Integer
tmp = target.column
If tmp = 26 Then...




PS : Désolé pour le doublon
 

papapaul

XLDnaute Impliqué
Re : Demande d'aide pour amélioration d'écriture macro

Salut degap05 et romain.

Pas trop le temps de regarder ce matin, mais
déjà dans tes codes il y 2 fois x1none et pas xlnone.
C'est surement autre chose pour ta question de
la colonne 26, puisque le texte est bien copié
mais pas la mise en place des couleurs

Les vrais pros vont trouver

@+
 

degap05

XLDnaute Impliqué
Re : Demande d'aide pour amélioration d'écriture macro

Bonjour, papapaul et romain,

En fait je me suis mal exprimé, je souhaiterais que le code soit formulé en commençant par:

If Target.Column = 26 Then.

Ensuite le code vide les cellules sans effacer les formules, puis retrie l'ensemble des données de la feuille en prenant comme première référence de tri la colonne B puis la colonne C en seconde référence. Enfin repositionne les couleurs de la feuille .

Merci de votre intérêt et de votre aide.
 

Discussions similaires

Réponses
7
Affichages
451
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…