Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Inserrer une ligne dans tableau

2 réponses
Avatar
eis
Bonjour à tous, voici ma question
Dans un tableau d'environ 1500 lignes avec des donnée à partir de la 2ème
ligne, la 1ère ligne contenant mes entêtes de colonnes.
Dans la colonne D, je n'ai que des valeurs numériques. Comment en descendant
dans mon tableau jusqu'à la dernière ligne à partir
de la cellule D2, inserrer automatiquement 1 ligne vide quand la valeur
devient supérieure.
Par exemple : inserrer une 1ère ligne vide sous la ligne 149 quand la valeur
passe de 430 en D 149 à 837 en D 150, puis inserrer
une autre ligne vide sous la ligne 302 quand la valeur passe de 837 en D302
à 901 en D303 et ainsi de suite jusqu'au bas de mon
tableau.
Merci pour vos propositions

2 réponses

Avatar
François
Bonjour,

Essayez l'instruction ci dessous

Sub test()

Dim Nbref As Single ' ou Long si ce sont des nombres
entiers
Dim i As Integer

Nbref = Cells(2, 4).Value

i = 2
While Cells(i, 4) <> ""
If Cells(i, 4) <> Nbref Then
Cells(i, 1).Select
Selection.EntireRow.Insert
Nbref = Cells(i + 1, 4).Value
i = i + 2
Else
i = i + 1
End If

Wend

End Sub


Bonne soirée

François


-----Message d'origine-----
Bonjour à tous, voici ma question
Dans un tableau d'environ 1500 lignes avec des donnée à
partir de la 2ème

ligne, la 1ère ligne contenant mes entêtes de colonnes.
Dans la colonne D, je n'ai que des valeurs numériques.
Comment en descendant

dans mon tableau jusqu'à la dernière ligne à partir
de la cellule D2, inserrer automatiquement 1 ligne vide
quand la valeur

devient supérieure.
Par exemple : inserrer une 1ère ligne vide sous la ligne
149 quand la valeur

passe de 430 en D 149 à 837 en D 150, puis inserrer
une autre ligne vide sous la ligne 302 quand la valeur
passe de 837 en D302

à 901 en D303 et ainsi de suite jusqu'au bas de mon
tableau.
Merci pour vos propositions


.



Avatar
eis
merci pour le coup de pousse
yves
"François" a écrit dans le message de
news: 0ac501c3811e$b8adb660$
Bonjour,

Essayez l'instruction ci dessous

Sub test()

Dim Nbref As Single ' ou Long si ce sont des nombres
entiers
Dim i As Integer

Nbref = Cells(2, 4).Value

i = 2
While Cells(i, 4) <> ""
If Cells(i, 4) <> Nbref Then
Cells(i, 1).Select
Selection.EntireRow.Insert
Nbref = Cells(i + 1, 4).Value
i = i + 2
Else
i = i + 1
End If

Wend

End Sub


Bonne soirée

François


-----Message d'origine-----
Bonjour à tous, voici ma question
Dans un tableau d'environ 1500 lignes avec des donnée à
partir de la 2ème

ligne, la 1ère ligne contenant mes entêtes de colonnes.
Dans la colonne D, je n'ai que des valeurs numériques.
Comment en descendant

dans mon tableau jusqu'à la dernière ligne à partir
de la cellule D2, inserrer automatiquement 1 ligne vide
quand la valeur

devient supérieure.
Par exemple : inserrer une 1ère ligne vide sous la ligne
149 quand la valeur

passe de 430 en D 149 à 837 en D 150, puis inserrer
une autre ligne vide sous la ligne 302 quand la valeur
passe de 837 en D302

à 901 en D303 et ainsi de suite jusqu'au bas de mon
tableau.
Merci pour vos propositions


.