Recherche dans un fichier excel [Résolu]

Signaler
Messages postés
32
Date d'inscription
mardi 7 mars 2006
Statut
Membre
Dernière intervention
15 juin 2006
-
Messages postés
32
Date d'inscription
mardi 7 mars 2006
Statut
Membre
Dernière intervention
15 juin 2006
-
Bonjour à tous !

J'ai un fichier excel qui me sert de base de données. Mes champs sont de type : code société, code établissement, nom, prénom, matricule etc ...

Je dois rechercher dedans les personnes de code société 01, de code etablissement ROM, dont la date d'entrée est comprise entre le 28/02/2006 et le 30/03/2006. Le champs date entrée est dans les champs, et sous format date normal.

Voici mon code :

Sub recherche()

Dim i As Integer
i = 1

While Cells(i, 1) <> ""

While Cells(i, 1) = "01"

While Cells(i, 3) = "ROM"

While "28/02/2006" < Cells(i, 17) < "30/03/2006"
MsgBox (Cells(i, 6))

Wend
i = i + 1
Wend
i = i + 1
Wend
i = i + 1
Wend

End Sub

Ce n'est qu'une bribe mais il ne fonctionne déja pas ... En effet vb et excel plante, enfin il ne répondent pas et rien n'abouti ... je suis obligé de faire Echap.
Je pense déja que mon algo est faux et aussi que la recherche des dates dans mon while n'est pas correct mais je ne sais pas faire

Please help ^^.

Merci beaucoup d'avance !!

Greg

3 réponses

Messages postés
4030
Date d'inscription
mardi 13 mai 2003
Statut
Modérateur
Dernière intervention
23 décembre 2008
22
Salut,



Ptites corrections :





Sub recherche()



Dim i As Integer

i = 1



While Cells(i, 1) <> ""

If Cells(i, 1) = "01" Then

If Cells(i, 3) = "ROM" Then

If "28/02/2006" < Cells(i, 17) And Cells(i,17) < "30/03/2006" Then

MsgBox (Cells(i, 6))

End If

End If

End If

i = i + 1

Wend



End Sub




Manu
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 82 internautes nous ont dit merci ce mois-ci

Messages postés
32
Date d'inscription
mardi 7 mars 2006
Statut
Membre
Dernière intervention
15 juin 2006

tu pense qu'il faut faire avec des if ?
En fait dans cette base d'une traitaine de champs, j'ai 1400 enregistrements lol !!!

Je viens de tenter ça tourne, mais le soucis est que même sur un essai de 5 enregistrement dont un qui doit marcher cad me mettre la MsgBox, et bien le teste sur la date ne fonctionne pas. La case cells(i,17) est en format date, mais je ne vois pas comment faire ...

En tout cas merci beaucoup déja !! Si tu as une petite idée pour la date ?
Messages postés
32
Date d'inscription
mardi 7 mars 2006
Statut
Membre
Dernière intervention
15 juin 2006

EUREKA !§! le secret est là : CDate

Sub recherche()

Dim i As Integer
i = 1

While Cells(i, 1) <> ""
If Cells(i, 1) = "01" Then
If Cells(i, 3) = "ROM" Then
If CDate("28/02/2006") < Cells(i, 17) And Cells(i, 17) < CDate("30/03/2006") Then
MsgBox (Cells(i, 6))
End If
End If
End If
i = i + 1
Wend

End Sub

Ca marche !! merci encore ! par contre comment fait tu pour mettre le code ici avec les couleurs ?