Sortir d'une boucle Find

  • Initiateur de la discussion Initiateur de la discussion cloclo57
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

cloclo57

Guest
Bonjour a tous

Je recherche comment sortir de ma boucles Find ci dessous apres avoir copier le medecin dans ma base de donnée (cal2008) et collé sur la feuille depense

Merci d'avance de vos reponse


For Each cal2008 In [E5😀C36]

selection.Find(What:=medecin, After:=ActiveCell, LookIn:=xlValues, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
True).Activate


Range("D50").Value = ActiveCell.Value
tarif = ActiveCell.Offset(0, 1)
Range("E50").Value = tarif

Next
 
Re : Sortir d'une boucle Find

Merci pour l'explication , je me suis peu etre mal exprimé.
Mais moi je veux extraire le nom qui est ecrit x fois dans ma base de donnée , donc la boucle recherche a chaque passage , est a la fin de la scrutation de ma base de donnée le boucle doit s'arreter automatiquement
 
Re : Sortir d'une boucle Find

Re

Pour rechercher plusieurs occurence d'un même terme (ici medecin) il faut utiliser
Findnext
je te laisse aller voir l'aide sur le sujet
ce que j'aimerais comprendre afin de t'aider c'est deja
ou il faut chercher (la selection ? ou la plage E5:C36 ?)

ensuite si on trouve plusieurs occurences (donc plusieurs tarifs) que doit-on en faire ?

les mettre tous dans la cellule E50 ?
 
Re : Sortir d'une boucle Find

Merci de ta reponse rapide

J'ai 2 feuilles , dans la premiere j'ai la base de donnée , elle se nomme (cal2008)
La deuzieme feuille s'appelle (depense)
Il s'agit d'extraire d'un base de donnée (cal2008(E5😀C36) le nom du medecin ainsi que le tarif.
Sachant que ce nom peu y etre plusieur fois

Ci dessous exemple sur lequel je travaille


Private Sub CommandButton1_Click()

Range("e5:dc36").Select
For Each cal2008 In [E5😀C36]

selection.Find(What:=medecin, After:=ActiveCell, LookIn:=xlValues, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
True).Activate

Range("D50").Value = ActiveCell.Value
tarif = ActiveCell.Offset(0, 1)
Range("E50").Value = tarif


rep = MsgBox("Recherche du suivant", vbYesNo, "Recherche")
If rep = vbNo Then Exit For

Rows("50:50").insert Shift:=xlDown
tarif = ""

Next

Range("D50:E66").Select
selection.Copy
Sheets("depense").Select
Range("A1:B1").Select
ActiveSheet.Paste
Range("A1:B1").Select
Application.CutCopyMode = False
selection.EntireRow.insert


Sheets("cal2008").Select
Range("b1").Select


End Sub
 
Re : Sortir d'une boucle Find

Bonjour
Bonsoir pierrejean

Il faut utiliser une boucle DO .... LOOP
Dans l'aide de VBA on trouve un exemple pour l'écriture.
Ci dessous un exemple de macro qui cherche une valeur dans une feuille. La recherche se fait ligne par ligne.
La zone de recherche est modifiée chaque fois que l'on trouve une valeur. La variable lig contient le numéro de ligne ou on a trouvé la valeur, donc cel sera une plage qui commence à la ligne lig + 1
Quand on a trouvé toutes les valeurs on sort de la boucle par "exit do".
Cette macro sert à écrire des lignes dans une listview ou autre ( call remplirligne)
Code:
Do
                    Set cel = .Range("a" & lig + 1 & ":" & Sheets(ws.Name).Cells.SpecialCells(xlCellTypeLastCell).Address(0, 0)) _
                    .Find(data1, LookIn:=xlValues, SearchOrder:=xlByRows, lookat:=xlPart)
                    If Not cel Is Nothing Then
                        Call remplirligne(cel.Row, ws.Name, Chr(64 + i))
                        lig = cel.Row
                    Else
                        Exit Do
                    End If
                Loop

JP

Voir le fil https://www.excel-downloads.com/threads/recherchv.91619/
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
589
Réponses
3
Affichages
639
Réponses
12
Affichages
1 K
V
Réponses
4
Affichages
3 K
Valentin94
V
A
Réponses
9
Affichages
3 K
M
  • Question Question
Réponses
0
Affichages
1 K
Mirguy23
M
Retour