![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Nouveau membre du Club
![]() Date d'inscription: novembre 2007
Messages: 70
|
Bonjour,
J'aurais besoin de savoir quel méthode peux me permettre de sortir d'une recherche lorsque la valeur que je recherche n'est pas trouvé ou ne me convient pas ... J'utilise le code suivant pour la recherche Code :
Cells.Find(What:=NumAppel, after:=ActiveCell, _ LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:=True, SearchFormat:=False).Activate ..... Code :
Cells.FindNext(after:=ActiveCell).Activate Lorsque j'utilise cette méthode, ça tourne en boucle sans jamais se finir puisque la valeur est trouvé plusieurs fois. Je vous toute la partie de code Code :
'Comparaison entres les infos Mobile et Fixe
For i = 0 To UBound(appelsMatch) - 2
For j = 2 To lignefinfixe - 1
If Sheets(OngletMobile).Cells(j, INDICE_MAX_PLUS_UN) <> 1 Then
NumAppel = appelsMatch(i).a_NumMobile
'Recherche sur onglet fixe
Sheets(OngletFixe).Activate
Cells.Find(What:=NumAppel, after:=ActiveCell, _
LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:=True, SearchFormat:=False).Activate
j = ActiveCell.Row
If Abs(DateDiff("s", CDate(appelsMatch(i).a_heureMobile), CDate(Sheets(OngletFixe).Cells(j, g_colHeure)))) < 60 Then
'pour debug gris
Sheets(OngletFixe).Rows(j).Interior.ColorIndex = 15
Sheets(OngletMobile).Rows(i + 2).Interior.ColorIndex = 15
Sheets(OngletFixe).Cells(j, 85).value = i + 2
appelsMatch(i).a_heureFixe = Sheets(OngletFixe).Cells(j, g_colHeure)
appelsMatch(i).a_NumFixe = Sheets(OngletFixe).Cells(j, g_colNAppel)
appelsMatch(i).a_sensFixe = Sheets(OngletFixe).Cells(j, g_colAppel)
appelsMatch(i).a_ligneFixe = j
Sheets(OngletMobile).Cells(j, INDICE_MAX_PLUS_UN) = 1
nbAppelsMatchs = nbAppelsMatchs + 1
'remplissage des l'onglets Fixe_txt et mobile_TXT
rempli_onglet_FM_Txt i + 2, j
Exit For
Else
Cells.FindNext(after:=ActiveCell).Activate
j = ActiveCell.Row
End If
End If
Next j
Next i
Merci |
|
|
|
|
|
#3 (permalink) |
|
Nouveau membre du Club
![]() Date d'inscription: novembre 2007
Messages: 70
|
je vous donne des exemple de données
Coté Fixe Appel Type E/S Heure 1 Fixe E 14:29:12 2 Fixe E 14:32:13 1 Fixe E 14:51:52 2 Fixe E 14:54:51 3 Fixe S 14:57:54 4 Fixe E 15:01:06 ...... 38 Fixe E 18:22:17 39 Fixe S 18:25:18 40 Fixe E 18:28:30 41 Fixe E 18:31:31 42 Fixe S 18:34:32 43 Fixe E 18:36:32 44 Fixe E 18:40:45 45 Fixe S 18:43:46 46 Fixe E 18:46:59 Coté Mobile : Appel Type E/S Heure 1 Automate S 14:29:05 1 Automate S 14:51:43 2 Automate S 14:54:44 3 Automate E 14:58:08 4 Automate S 15:00:59 .... 38 Automate S 18:22:10 39 Automate E 18:25:30 40 Automate S 18:28:24 41 Automate S 18:31:24 42 Automate E 18:34:44 43 Automate S 18:37:38 44 Automate S 18:40:38 45 Automate E 18:43:58 46 Automate S 18:46:52 |
|
|
|
|
![]() |
![]() |
||
Sortir d'une recherche quand valeur non trouvée
|
||
Offres d'
emploi informatique
sur Lesjeudis.com
|
| Outils de la discussion | |
|
|