Exclure deux lignes quand la seconde commence par #
Résolu
dhaze
Messages postés
113
Date d'inscription
Statut
Membre
Dernière intervention
-
JvDo Messages postés 2012 Statut Membre -
JvDo Messages postés 2012 Statut Membre -
Bonjour à tous,
Cette macro duplique toutes les lignes.
Au début de la seconde ligne elle ajoute, entre autre, un # dans la colonne A.
Le but est de créer une liste de documents sonores doubles-faces à partir d'une liste de simples-faces.
Mais voilà, tout serait trop simple...
Il arrive qu'il existe déjà des doubles-faces dans une liste.
Je voudrais donc exclure de ma boucle ces deux lignes quand la seconde commence par un #
Merci pour vos lumières...
Lo.
Cette macro duplique toutes les lignes.
Au début de la seconde ligne elle ajoute, entre autre, un # dans la colonne A.
Le but est de créer une liste de documents sonores doubles-faces à partir d'une liste de simples-faces.
Mais voilà, tout serait trop simple...
Il arrive qu'il existe déjà des doubles-faces dans une liste.
Je voudrais donc exclure de ma boucle ces deux lignes quand la seconde commence par un #
Dim Collone_Repertoire, Colone_Titre, Collone_Face, Collone_Nom As Integer
Dim Derniere_Ligne As Long
Collone_Repertoire = Rows(1).Find("Repertoire", , , , xlByRows, xlPrevious).Column
Colone_Titre = Rows(1).Find("Titre", , , , xlByRows, xlPrevious).Column
Collone_Face = Rows(1).Find("Face", , , , xlByRows, xlPrevious).Column
Collone_Nom = Rows(1).Find("Nom de fichier", , , , xlByRows, xlPrevious).Column
Derniere_Ligne = Columns(Collone_Repertoire).Find("*", , , , xlByColumns, xlPrevious).Row
For n = Derniere_Ligne To 2 Step -1
If Cells(n, Collone_Repertoire) <> "#" Then
Rows(n & ":" & n).Select
Application.CutCopyMode = False
Selection.Copy
Selection.Insert Shift:=xlDown
Range("A" & n + 1 & ":G" & n + 1).Select
Selection.ClearContents
Range("A" & n + 1) = "#"
Range("F" & n + 1) = "#"
Cells(n, Collone_Nom).Select
ActiveCell.FormulaR1C1 = Cells(n, Collone_Repertoire).Value & "_A"
Cells(n + 1, Collone_Nom).Select
ActiveCell.FormulaR1C1 = Cells(n, Collone_Repertoire).Value & "_B"
Cells(n, Collone_Face) = "A"
Cells(n + 1, Collone_Face) = "B"
Cells(n + 1, Colone_Titre).Interior.color = 255
End If
Next
Merci pour vos lumières...
Lo.
A voir également:
- Exclure deux lignes quand la seconde commence par #
- Deux ecran pc - Guide
- Comment faire deux colonnes sur word - Guide
- Nombre de jours entre deux dates excel - Guide
- 1 milliard en seconde - Accueil - Technologies
- Afficher toutes les lignes masquées excel ✓ - Forum Excel
3 réponses
Bonsoir,
sans fichier pour tester, et en considérant que ta procédure fonctionne correctement, pour ajouter la gestion des # existant dans ta base, je tenterais simplement d’ajouter un Else à ton If pour décrémenter ton indice de boucle n=n-1.
cordialement
sans fichier pour tester, et en considérant que ta procédure fonctionne correctement, pour ajouter la gestion des # existant dans ta base, je tenterais simplement d’ajouter un Else à ton If pour décrémenter ton indice de boucle n=n-1.
cordialement
Bonjour JvDo,
Merci pour ta réponse.
Effectivement ce serait plus simple avec un fichier, que voici :
https://www.cjoint.com/c/GCbltzuJ4nX
J'ai de grosses lacunes dans la rédaction des actions à exécuter dans une boucle, je bute souvent là-dessus !
Lo.
Merci pour ta réponse.
Effectivement ce serait plus simple avec un fichier, que voici :
https://www.cjoint.com/c/GCbltzuJ4nX
J'ai de grosses lacunes dans la rédaction des actions à exécuter dans une boucle, je bute souvent là-dessus !
Lo.