RechercheV

Chrys

XLDnaute Nouveau
Bonjour à tous,

Très souvent sur ce forum afin d'y trouver des réponses à mes questions, je trouve en général assez facilement mon bonheur :)
Je suis aujourd'hui vraiment bloqué par un soucis sur la fonction RechercheV, fonction que j'utilise pourtant très régulièrement. Je vais tenter d'exprimer ce soucis le plus clairement possible.

Je travaille sur un fichier de plus de 50000 lignes dans le style : (Référence / Libelle / Fournisseur / Prix ....)

Je cherche a faire une RechercheV sur la référence afin de réaliser mes devis.
Le soucis est que sur mes 50000 références, de fournisseurs différents, j'ai des ref à 5, 6 voir 7 chiffres.

Le problème se pose sur les références commençant par 0. Je ne trouve pas le moyen de faire differencier à Excel par exemple les références : 00100 et 000100.
Je dois absolument garder les 0 sous peine de doublons et donc ne soucis de compréhension pour les commerciaux ;).

J'ai essayer divers formatage de cellule, que ce soit pour la valeur cherchée ou pour la plage, du texte du nombre et du personnalisé (00###; #####; ...) sans trouver de solutions.

ci joint un fichier de test pour exemple.

Merci d'avance pour votre aide !

Chrys
 

Pièces jointes

  • RechercheV.xlsx
    9.9 KB · Affichages: 41
  • RechercheV.xlsx
    9.9 KB · Affichages: 45
  • RechercheV.xlsx
    9.9 KB · Affichages: 41

Modeste

XLDnaute Barbatruc
Re : RechercheV

Bonjour Chrys,

Si tu "contournes la difficulté" en modifiant le format de chaque cellule dans ton tableau, "visuellement" les données semblent bien différentes, mais le contenu réel de la cellule est toujours la même valeur numérique: 100

A mon humble avis, la meilleure solution serait d'utiliser un format Texte dans ton tableau et dans la cellule contenant la valeur cherchée (F11)
Voir proposition en annexe (où j'ai utilisé un autre tableau)
 

Pièces jointes

  • RechercheV (Chrys).xlsx
    13.1 KB · Affichages: 49

Chrys

XLDnaute Nouveau
Re : RechercheV

Bonjour Modeste,

Merci beaucoup pour ta réponse.
Du coup en faisant ce mini tableau pour vous montrer, par acquis de conscience j'ai testé comme toi (tout en texte) et j'ai vu que ça marchait.

Mais celà ne fonctionnait pas dans mon tableau original, les formules étant un poil plus poussée (SI ERREUR, ...)
Après quelques recherche j'ai trouvé d’où venait l'erreur et en effet cela fonctionne bien :)

Bref ca fonctionne un grand merci :)

Du coup je me retrouve avec 50000 lignes en format standard, avec tous les "0" adequats à rajouter, une idée pour me simplifier la vie ?

Chrys

Edit : J'ai trouvé une solution qui devrait ne pas me prendre trop de temps, à coup de concaténation et de coper coller :)
Sauf si meilleure solution je devrais m'en sortir comme ca !

Merci encore
 
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : RechercheV

Re-bonjour,

Pour "convertir" tous tes nombres en fonction du format que tu avais utilisé, je ne vois guère (et encore, pas certain) qu'une macro ... Mais je n'aurai pas le temps tout de suite :(

Je verrai tout à l'heure, si je trouve une solution ... à moins que quelqu'un d'autre n'en propose une d'ici là ...
 

Modeste

XLDnaute Barbatruc
Re : RechercheV

Salut Modeste geedee,

Juste une question: ne peut-on simplement exécuter la macro (sans mettre les cellules au format texte, préalablement)?
Pour le reste, merci d'être passé par là: j'aurais certainement fait plus compliqué :p
 

Modeste geedee

XLDnaute Barbatruc
Re : RechercheV

Bonsour®
Salut Modeste geedee,

Juste une question: ne peut-on simplement exécuter la macro (sans mettre les cellules au format texte, préalablement)?
Pour le reste, merci d'être passé par là: j'aurais certainement fait plus compliqué :p

:rolleyes:
il s'agissait bien de deux propositions distinctes...

- La macro ne change pas le format initial de la cellule, mais force la saisie en texte à l'aide de (')
comme lorsque l'on veux saisir une valeur numérique sous forme de texte.
La présence de cette (') inhibe l'évaluation automatique "by design" de la saisie.

- Le formattage de la plage au format texte ne permet plus ni l'évaluation numerique de la saisie, ni la saisie de formule...
:( supréme agacement : ce process n'est pas réversible par le changement manuel de format ...
sauf à effacer préalablement le contenu de la cellule.

il faut alors passer par le menu : Données, convertir et choisir : standard.
 

MichD

XLDnaute Impliqué
Re : RechercheV

Bonjour,

Dans le module de la feuille où l'action se déroule,
copie ce bout de code.

Tu dois mettre la cellule F11 au format Texte.
Tu dois saisir tous les zéros de la "Ref" que tu cherches


VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range
If Not Intersect(Target, Range("F11")) Is Nothing Then
    With Range("A10:A" & Range("A65536").End(xlUp).Row)
        Set Rg = .Find(Range("F11"), LookIn:=xlValues, lookat:=xlWhole)
    End With
    If Not Rg Is Nothing Then
        Application.EnableEvents = False
        Range("F11").Offset(, 1) = Rg.Offset(, 1)
        Range("F11").Offset(, 2) = Rg.Offset(, 2)
        Application.EnableEvents = True
    End If
End If
End Sub

MichD
-------------------------------------------------------
 

Statistiques des forums

Discussions
312 492
Messages
2 088 895
Membres
103 982
dernier inscrit
krakencolas