Commande recherche texte

Kristof

XLDnaute Nouveau
Bonjour,

J'utilise actuellement le bout de macro ci-dessous mais je voudrai aujourd'hui modifier le mode d'insertion de la ligne à savoir non plus à la li+16 mais 4 lignes après avoir trouvé le terme "Remarques" dans la colonne B.

For n = Range("E65536").End(xlUp).Row To 66 Step -1

If Range("E" & n) = " " Then
li = Range("E" & n).Row
Rows(li).Delete
Cells(li + 16, 1).EntireRow.Insert Shift:=xlDown
End If

Next n


Merci d'avance pour votre aide,
 

Dan

XLDnaute Barbatruc
Re : Commande recherche texte

Bonjour,

Essaie :
Code:
 For n = Range("B65536").End(xlUp).Row To 66 Step -1
If Range("B" & n) = "Remarques" Then
li = Range("B" & n).Row
Rows(li).Delete
Cells(li + 4, 1).EntireRow.Insert Shift:=xlDown
End If
Next n

Attention que la macro s'érrêtera à la ligne 66 comme celle que tu as proposée.

N'oublie pas non plus de déclarer tes variables n et li.

Bon ap

Dan
 

pierrejean

XLDnaute Barbatruc
Re : Commande recherche texte

bonjour kristof

pour avoir le numero de ligne ou il y a Remarques dans la colonne B

Code:
Set c = Range("B:B").Find("Remarques", LookIn:=xlValues)
    If Not c Is Nothing Then
       li = c.Row
     Else
     MsgBox ("Pas de Remarques dans la colonne B")
     Exit Sub
    End If

je pense que tu pourras adapter a ton fichier

dans le cas contraire n'hesite pas a revenir

oups

avais pas rafraichi

Salut Dan
 

Kristof

XLDnaute Nouveau
Re : Commande recherche texte

Merci Pierrejean j'ai bien inséré cette partie de code dans ma macro et cela fonctionne correctement à une exception près, je m'explique.

La macro que j'applique traite un tableau de résultats qui est répété un grand nombre de fois (1 tableau par page) et le texte "remarque" apparaît tout le temps en dessous de chaque tableau. La suppression des lignes se fait correctement mais l'insertion des lignes ne se fait que sur la première page ce qui fait que la première page cumule les insertions de lignes liées aux suppressions de toutes les lignes. (Cela à cause de la présence du texte remarque sur la première page).

Comment faire pour que les insertions de lignes se fassent de la bonne manière ?

Merci,
 

pierrejean

XLDnaute Barbatruc
Re : Commande recherche texte

bonsoir Kristof

teste cette version (a adapter pour la ligne de retour)

Code:
For n = Range("E65536").End(xlUp).Row To 1 Step -1
If Range("E" & n) = " " Then
Rows(Range("B" & n).Row).Delete
    Set c = Range("B:B").Find("Remarques",[COLOR=red] Range("B" & n[/COLOR]), LookIn:=xlValues)
    If Not c Is Nothing Then
       li = c.Row
       Else
     MsgBox ("Pas de Remarques dans la colonne B")
     End If
 Cells(li + 4, 1).EntireRow.Insert Shift:=xlDown
End If
Next n
 

Discussions similaires

Statistiques des forums

Discussions
312 472
Messages
2 088 709
Membres
103 928
dernier inscrit
MIKETUAU