Recherche dans une plage de plusieurs colonnes et plusieurs lignes

Nicko29

XLDnaute Nouveau
Bonsoir,

Je connais les formules RechercheV et rechercheH et equiv , mais peut-on rechercher une valeur dans une plage avec plusieurs colonnes et lignes comme " A1 : D1 " , identifier le numéro de la ligne, voir de la colonne cette cellule dans la feuille.

Un peu comme : =EQUIV(C6;A1:A25;0) qui renvoie le numéro de la ligne , soit en formule ou en VBA.

Merci !
 
Dernière édition:

Softmama

XLDnaute Accro
Re : Recherche dans une plage de plusieurs colonnes et plusieurs lignes

bonsoir,

Oui si tu cherches la valeur appelée x dans la zone appelée Zone

VB:
Set Zone as range, c as range
Set Zone = range("A1:D250") 'Par exemple
set c= Zone.find(x)
msgbox Iif(c is nothing, x " ne figure pas dans la zone " & Zone.address, x " a été trouvé en cellule " & c.address )
 

Nicko29

XLDnaute Nouveau
Re : Recherche dans une plage de plusieurs colonnes et plusieurs lignes

De nouveau dans la discussion sur la recherche en VBA.

J'ai donc adapter mon code (Fichier joint en exemple).

Mais pour ma recherche je rencontre un problème :

Quand je recherche la valeur 2 dans les tableaux, la fonction recherche affiche le "2" mais aussi "25" ou "Valch2".

Or je voudrais que ma fonction recherche exactement la valeur recherchée et non pas les autres valeurs contenant celle-ci.

Comment puis-je régler ce problème ?

et comment indiqué que la valeur de textBox4 doit être rentrée sous forme de nombre ?

Merci !
 

Pièces jointes

  • Base test-C.zip
    25.9 KB · Affichages: 242

Softmama

XLDnaute Accro
Re : Recherche dans une plage de plusieurs colonnes et plusieurs lignes

Bonsoir,
Mais pour ma recherche je rencontre un problème :
Quand je recherche la valeur 2 dans les tableaux, la fonction recherche affiche le "2" mais aussi "25" ou "Valch2".
Or je voudrais que ma fonction recherche exactement la valeur recherchée et non pas les autres valeurs contenant celle-ci.

Pour régler ceci, remplace la ligne avec Zone.find par :
Code:
Set c = Zone.Find(what:=x, [B]lookat:=xlWhole[/B])

Ensuite, pour forcer Textbox4 à entrer une valeur numérique, place ce code:
Code:
Private Sub TextBox4_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsNumeric(TextBox4.Value) Then Cancel = True
End Sub

Par ailleurs, à la lecture rapide de ton code, je pense que tu aurais largement intérêt à placer un
Code:
Public c as Range
en tête de module1, avant tes macros, de façon à pouvoir utiliser cette variable c dans plusieurs macros.
 

bcharef

XLDnaute Accro
Re : Recherche dans une plage de plusieurs colonnes et plusieurs lignes

Bonsoir Nicko29, Softmama,
Bonsoir à toutes et à tous.

Un peu comme : =EQUIV(C6;A1:A25;0) qui renvoie le numéro de la ligne , soit en formule ou en VBA.

Merci !

Un essai sans VBA.

Bonne lecture.

Amicalement.

BCharef
 

Pièces jointes

  • BaseTest.zip
    17.3 KB · Affichages: 280
  • BaseTest.zip
    17.3 KB · Affichages: 268
  • BaseTest.zip
    17.3 KB · Affichages: 263

pingouinal

XLDnaute Occasionnel
Re : Recherche dans une plage de plusieurs colonnes et plusieurs lignes

Bonjour Poulie,

Je viens de regarder ta formule qui est très proche de ce que je cherche pour un de mes fichiers. J'aurais cependant besoin d'y apporter une modification mais je n'arrive pas à la faire.

J'aurais besoin d'obtenir le numéro de la colonne dans laquelle est ma valeur.
Dans ton exemple, cela donnerait la formule suivante :
Code:
=SUMPRODUCT(($B$10:$E$25=A1)*COLUMN($B$10:$E$25))

Le problème est que si ma valeur est présente plusieurs fois dans ma base de données, ça m'additionne les colonnes et j'aimerais que cela me donne le numéro de la première colonne dans laquelle est ma valeur.

Saurais-tu comment adapter la formule?

D'avance merci.


Bonsoir Nicko29, Softmama,bcharef, Bonsoir à tous,

Un esai avec formule.

Bonne soirée
 

CISCO

XLDnaute Barbatruc
Re : Recherche dans une plage de plusieurs colonnes et plusieurs lignes

Bonsoir

Une posssibilité en pièce jointe, avec une formule matricielle.

@ plus
 

Pièces jointes

  • Colonne.xls
    21 KB · Affichages: 426
  • Colonne.xls
    21 KB · Affichages: 435
  • Colonne.xls
    21 KB · Affichages: 490

Monique

Nous a quitté
Repose en paix
Re : Recherche dans une plage de plusieurs colonnes et plusieurs lignes

Bonjour,

Avec doublons : adresse des différents doublons
Formules matricielles, à valider pat ctrl; maj et entrée
 

Pièces jointes

  • AdresseDoublons.zip
    8.6 KB · Affichages: 243

Discussions similaires

Statistiques des forums

Discussions
312 339
Messages
2 087 408
Membres
103 539
dernier inscrit
RAPH2012