Insérer une ligne ou plus en fonction de la valeur de cellule
Jiand
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
Bonjour ,
J'ai un tableau de données avec une colonne A qui contient une série de chiffres de [1 à 6] en répétition
En fonction de cette valeur j'aimerai insérer une ligne vide au dessus
Exemple :
If Cells(i, 1).Value = 2 Then Insérer une ligne vide au dessus
If Cells(i, 1).Value = 3 Then Insérer deux lignes vides au dessus
J'ai essayé de créer une Macro pour exécuter cette opération comme suite :
Sub Macro1()
Dim i As Integer
Dim x As Integer
Dim b As Integer
'Je voudrais faire cette opération de la ligne 4 jusqu'à 200
For i = 4 To 10
x = Cells(i, 1).Value
b = Cells(i, 1).Row
If x = 2 Then
ActiveSheet.Range("A" & b, "A" & b).EntireRow.Insert
End If
Next
End Sub
Le résultat quand j'exécute la Macro est une création de Ligne jusqu'à i=200 à partir de la première valeur =2 (pour le 1er exemple)
Pouvez vous m'aider un compléter ce script pour arrêter l'opération selon le nombre de ligne précis à insérer en fonction de la valeur x (qui se répète) . Donc cette opération doit se répéter en boucle à chaque fois en partant de la ligne 4 jusqu'à la ligne 200.
J'espère que j'ai pu être plus au moins clair sur ma problématique
Merci
Bien Cordialement
J'ai un tableau de données avec une colonne A qui contient une série de chiffres de [1 à 6] en répétition
En fonction de cette valeur j'aimerai insérer une ligne vide au dessus
Exemple :
If Cells(i, 1).Value = 2 Then Insérer une ligne vide au dessus
If Cells(i, 1).Value = 3 Then Insérer deux lignes vides au dessus
J'ai essayé de créer une Macro pour exécuter cette opération comme suite :
Sub Macro1()
Dim i As Integer
Dim x As Integer
Dim b As Integer
'Je voudrais faire cette opération de la ligne 4 jusqu'à 200
For i = 4 To 10
x = Cells(i, 1).Value
b = Cells(i, 1).Row
If x = 2 Then
ActiveSheet.Range("A" & b, "A" & b).EntireRow.Insert
End If
Next
End Sub
Le résultat quand j'exécute la Macro est une création de Ligne jusqu'à i=200 à partir de la première valeur =2 (pour le 1er exemple)
Pouvez vous m'aider un compléter ce script pour arrêter l'opération selon le nombre de ligne précis à insérer en fonction de la valeur x (qui se répète) . Donc cette opération doit se répéter en boucle à chaque fois en partant de la ligne 4 jusqu'à la ligne 200.
J'espère que j'ai pu être plus au moins clair sur ma problématique
Merci
Bien Cordialement
A voir également:
- Insérer un nombre de lignes en fonction de la valeur d'une case
- Insérer une vidéo dans powerpoint - Guide
- Fonction si et - Guide
- Partage de photos en ligne - Guide
- Faites afficher avec un fond coloré les cellules qui contiennent une valeur comprise entre 250 et 350. quel nombre est dessiné en surbrillance ? ✓ - Forum Excel
- Insérer signature word - Guide
Ma deuxième étape est de coller les valeur de A à K au niveau de la ligne vide rajoutée
Du coup j'ai pensé à rajouté :
If n = 2 Or n = 3 Or n = 4 Or n = 5 Or n = 6 Then
For k = 1 To n - 1
Rows(li).Insert
Range("A" & li & ":K" & li).Select
Selection.Copy
Next k
End If
Mais ça n'a pas l'air de marché ! Avez vous un idée ?
Merci bcp pour votre aide