Bonjour à tous,
Je reviens vers vous afin d'essayer de régler un problème..
En effet, j'ai, dans un fichier, une liste de données pour laquelle, si une cellule est vide en colonne D, un userform apparaît..
Grossomodo, il y a une rechercheV qui existe à partir de la référence en colonneA. Si la macro ne trouve pas, alors un userform apparaît pour effectuer une recherche avec une autre référence.
Si la deuxième référence n'est pas aussi retrouvée dans le fichier source, alors cette ligne sera supprimée pour être traitée autrement.
Le problème est que du coup, en supprimant la ligne, la plage forcement se réduit et ma macro continue de faire son test sur la plage initial ( de 2 à derlig). Le msgbox apparaît alors alors qu'il n'y a plus lieu.
Je voulais savoir s'il existe une possibilité d'adapter la plage en fonction du nombre de ligne supprimée dans la macro.
Si par exemple, la plage faisait 9 lignes et que la macro en a supprimé 2, qu'elle prenne en compte les 2 lignes supprimées pour effectuer son test final sur 7 lignes.
Merci à tous
OOLIVE
Je reviens vers vous afin d'essayer de régler un problème..
En effet, j'ai, dans un fichier, une liste de données pour laquelle, si une cellule est vide en colonne D, un userform apparaît..
HTML:
For i = 2 To Derlig
If Cells(i, 4) = "" Then
M$ = "Not found. Would you try with an other reference ?"
ReponseMsgBox = MsgBox(M$, vbQuestion + vbYesNo, "Recherche par nom")
If ReponseMsgBox = vbYes Then
For Each C1 In WsCible.Range("D2:D" & Derlig)
If C1.Value = "" Then
C1.Offset(, -3).Select
x = Selection.Value
UserForm2.Show
End If
Next
Call Suppression
Derlig = Range("A65536").End(xlUp).Row
End If
End If
Next
Grossomodo, il y a une rechercheV qui existe à partir de la référence en colonneA. Si la macro ne trouve pas, alors un userform apparaît pour effectuer une recherche avec une autre référence.
Si la deuxième référence n'est pas aussi retrouvée dans le fichier source, alors cette ligne sera supprimée pour être traitée autrement.
Le problème est que du coup, en supprimant la ligne, la plage forcement se réduit et ma macro continue de faire son test sur la plage initial ( de 2 à derlig). Le msgbox apparaît alors alors qu'il n'y a plus lieu.
Je voulais savoir s'il existe une possibilité d'adapter la plage en fonction du nombre de ligne supprimée dans la macro.
Si par exemple, la plage faisait 9 lignes et que la macro en a supprimé 2, qu'elle prenne en compte les 2 lignes supprimées pour effectuer son test final sur 7 lignes.
Merci à tous
OOLIVE