Insertion de lignes à conditions

maninette1234

XLDnaute Nouveau
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
 

pierrejean

XLDnaute Barbatruc
Re : Insertion de lignes à conditions

bonjour maninette

voila ton fichier avec une macro pour mettre en gras tes sous-totaux
(suppose que la cellule A correspondante soit vide)
 

Pièces jointes

  • Exemple.zip
    12 KB · Affichages: 42
  • Exemple.zip
    12 KB · Affichages: 41
  • Exemple.zip
    12 KB · Affichages: 45

maninette1234

XLDnaute Nouveau
Re : Insertion de lignes à conditions

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
 

Pièces jointes

  • Exemplegras1.xls
    17 KB · Affichages: 68
  • Exemplegras1.xls
    17 KB · Affichages: 71
  • Exemplegras1.xls
    17 KB · Affichages: 66

Gorfael

XLDnaute Barbatruc
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+
 

maninette1234

XLDnaute Nouveau
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?
 

pierrejean

XLDnaute Barbatruc
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 !!
 

maninette1234

XLDnaute Nouveau
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?
 

pierrejean

XLDnaute Barbatruc
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:

pierrejean

XLDnaute Barbatruc
Re : Insertion de lignes à conditions

la macro a été testée sur le fichier joint

si le fichier ou tu l'utilises est different il peut y avoir a faire une adaptation
 

Pièces jointes

  • Exemplegras1.xls
    32 KB · Affichages: 76
  • Exemplegras1.xls
    32 KB · Affichages: 69
  • Exemplegras1.xls
    32 KB · Affichages: 68

Discussions similaires

Statistiques des forums

Discussions
312 203
Messages
2 086 196
Membres
103 153
dernier inscrit
SamirN