Bonjour tout le monde,
J'ai mes lignes sur une feuille qui sont séparées en deux grandes catégories, les deux étant séparées par une ligne intitulée "Fin de prestation".
Je souhaite lorsque certaines conditions sont remplies, déplacer une ligne de la première à la deuxième catégorie.
Donc mon problème c'est que pour le moment je fait:
Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 'Je cherche la ligne séparatrice de mes deux catégories For I = 1 To 60 If Cells(I, 3).Value = "Fin de prestation" Then Insertion = I End If Next 'Je parcours ma première catégorie For intCpt = 6 To IntNbRow 'Si condition remplie If Range("J" & intCpt).Value < Cells(1, 1).Value And Cells(intCpt, 2).Value <> 0 Then 'On met en gris With Range("A" & intCpt & ":SH" & intCpt).Interior .ColorIndex = 15 .Pattern = xlSolid End With 'On insert une ligne en début de deuxième catégorie 'La partie de code qui me pose problème End With End If Next
Je vous épargne les déclarations de variables.
Deux points bloquant:
-Pour le moment mon idée c'est d'insérer en dessous de ma ligne séparatrice mais si je fais:
Ben évidemment il ne comprend pas parce que Insertion c'est pas renvoyé à sa valeur. J'ai essayé plein de syntaxes mais impossible de trouver!
Code vb : Sélectionner tout - Visualiser dans une fenêtre à part Rows("Insertion:Insertion").Insert Shift:=xlDown
-Pour copier coller la seule méthode que j'ai trouvé c'est de sélectionner la ligne et de la copier, sélectionner la nouvelle ligne, coller, supprimer la ligne d'origine. Mais j'ai beaucoup lu sur le forum qu'il fallait éviter de passer par Activate et Select donc je suis preneur si vous avez une alternative.
Voilà! J'ai parcouru plein de sujets différents mais j'ai l'impression que rows().insert shift:)xlDown c'est vraiment ce qu'il y a de mieux pour ma situation donc j'aimerais bien faire fonctionner l'instruction!
Merci d'avance
Partager