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

Insertion de lignes à conditions

  • Initiateur de la discussion Initiateur de la discussion maninette1234
  • Date de début Date de début

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 !

M

maninette1234

Guest
Bonjour,

Je cherche à faire un truc depuis quelques temps que je ne trouve pas.

J'ai dans la colonne A des chiffres triés par ordre croissant. Je voudrais insérer une ligne a chaque changement de chiffres créant ainsi des groupes!

123
123

134
134


Je ne connais pas le VBA je lis bcp de choses à ce propos peut être que ca va m'aider à solutionner mon problème mais si quelqu'un à la solution je serai la plus heureuse!!

merci
 
Re : Insertion de lignes à conditions

pour la macro engras elle ne marche pas car dans mon fichier la colonne A n'est pas vide, auriez vous la possibilité de la modifier?
 
Re : Insertion de lignes à conditions

maninette1234 à dit:
ca ne marche pas car moi c pa la colonne D je vous envoie le fichier reel ou je dois faire ca vous verrez mieux
sélectionne I1
Menu Format>>Mise en format conditionnel
Condition 1
Case 1 : La formule est
Case 2 : =GAUCHE(MAJUSCULE(A1);3)="TOT"
tu valides par OK

Cellule I1 sélectionnée
Icône reproduire la mise en forme (le pinceau)
tu cliques sur le I de l'intitulé de la colonne, juste au-dessus de la ligne 1

la mise en forme conditionnelle :
la condition 1 est vrai si les 3 première lettre de la ligne en cours en colonne A sont TOT
Pour éviter les problèmes de Total, TOTAL ou total, je mets la valeur à tester en majuscule

A+
 
Re : Insertion de lignes à conditions

c genial cette mise en forme conditionnelle merci beaucoup !!!

j'ai une dernière chose a vous demander, je voudrais savoir si on peut faire une macro pour qu'une ligne s'insère apres chaque sous total, vous pensez que c'est faisable?
 
Re : Insertion de lignes à conditions

bonjour Maninette
salut Gorfael

teste cette macro

Code:
Sub soustotal()
For n = 1 To Range("I65536").End(xlUp)
If Left(Range("I" & n).FormulaLocal, 11) = "=SOUS.TOTAL" Then
Range("J" & n) = Range("I" & n)
Range("I" & n) = ""
Range("J" & n).Font.Bold = True
End If
Next n
End Sub

en esperant que cette fois ça marchera !!
 
Re : Insertion de lignes à conditions

La macro met effectivement les sous totaux dans la colonne J mais je n'arrive pas a faire ce que je veux, je vous explique :
Je voudrais que les sous totaux soient triés par ordre croissant tout en conservant les lignes appropriées biensur et en ayant toujours une ligne d'espace apres chaque total vous comprenez?
 
Re : Insertion de lignes à conditions

cette macro te fera le tri et inserera une ligne apres les sous-totaux

Code:
Sub Macro2()
    Range("A1:J" & Range("J65536").End(xlUp).Row).Select
    Selection.Sort Key1:=Range("J1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    For n = Range("J65536").End(xlUp).Row To 1 Step -1
    If Range("J" & n) <> "" Then
    Rows(n + 1).EntireRow.Insert
    End If
    Next n
End Sub

ps: tri ascendant

pour tri descendant mettre xlDescending au lieu de xlAscending
 
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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

H
Réponses
21
Affichages
3 K
H
B
Réponses
2
Affichages
2 K
bastienb
B
V
Réponses
96
Affichages
16 K
Bpil2326
B
V
Réponses
8
Affichages
2 K
vince87
V
M
Réponses
6
Affichages
894
M
A
  • Question Question
Réponses
17
Affichages
1 K
Ayral10
A
H
Réponses
3
Affichages
744
H
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…