Macro pour insérer un ligne sous condition
Fermé
yannick
-
20 avril 2015 à 22:28
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 - 21 avril 2015 à 00:22
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 - 21 avril 2015 à 00:22
A voir également:
- Macro pour insérer un ligne sous condition
- Excel cellule couleur si condition texte - Guide
- Insérer une vidéo sur powerpoint - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Insérer signature word - Guide
- Insérer liste déroulante excel - Guide
2 réponses
Gyrus
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
524
20 avril 2015 à 23:09
20 avril 2015 à 23:09
Bonsoir,
A+
Sub Test()
Dim Ligne As Long, i As Long, n As Long
For Ligne = Range("A" & Rows.Count).End(xlUp).Row To 2 Step -1
If Range("A" & Ligne) > Range("A" & Ligne - 1) + 1 Then
n = Range("A" & Ligne) - Range("A" & Ligne - 1) - 1
For i = 1 To n
Rows(Ligne).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Next i
End If
Next Ligne
End Sub
A+
Mike-31
Messages postés
18354
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
1 janvier 2025
5 110
Modifié par Mike-31 le 21/04/2015 à 00:20
Modifié par Mike-31 le 21/04/2015 à 00:20
Bonsoir,
Un peu tard mais j'étais sur ce code qui crée la série, créer un bouton activex
Option Explicit
Private Sub CommandButton1_Click()
Dim i, x As Integer
For i = Range("A65536").End(xlUp).Row To 2 Step -1
If Cells(i + 1, 1) > Cells(i, 1) + 1 Then
x = Cells(i + 1, 1) - Cells(i, 1) - 1
Rows(i + 1).Resize(x).Insert
End If
Next
For i = 2 To Range("A65536").End(xlUp).Row-1
Cells(i + 1, 1) = Cells(i, 1) + 1
Next
End Sub
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Un peu tard mais j'étais sur ce code qui crée la série, créer un bouton activex
Option Explicit
Private Sub CommandButton1_Click()
Dim i, x As Integer
For i = Range("A65536").End(xlUp).Row To 2 Step -1
If Cells(i + 1, 1) > Cells(i, 1) + 1 Then
x = Cells(i + 1, 1) - Cells(i, 1) - 1
Rows(i + 1).Resize(x).Insert
End If
Next
For i = 2 To Range("A65536").End(xlUp).Row-1
Cells(i + 1, 1) = Cells(i, 1) + 1
Next
End Sub
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
20 avril 2015 à 23:19
Erreur d'exécution '13' :
Incompatibilité de type
Quand je fais Débogage,
la ligne : If Range("A" & Ligne) > Range("A" & Ligne - 1) + 1 Then
est surligné en jaune
20 avril 2015 à 23:38
For Ligne = Range("A" & Rows.Count).End(xlUp).Row To 3 Step -1
A+
20 avril 2015 à 23:47
21 avril 2015 à 00:22
Si la première donnée est en ligne 15 :
For Ligne = Range("A" & Rows.Count).End(xlUp).Row To 16 Step -1
A+