Valeur est égale à une valeur ou une autre
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite recherchée une certaine valeur dans une colonne d'un fichier excel. Cependant, cette valeur a deux mots et ces deux mots peuvent être espacés ou collés.
J'aimerai déclarer cette valeur en mode est égale à valeur1(celle avec espace) ou à valeur2( celle sans espace)
Pour pouvoir ensuite avec un Find rechercher cette valeur dans ma colonne ( la méthode du find est acquise pour moi)
Merciii
- Valeur est égale à une valeur ou une autre
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Valeur ascii - Guide
- Excel ne pas afficher #valeur ✓ - Forum Excel
- Formule excel si contient texte alors valeur ✓ - Forum Excel
- La valeur relative de 9 dans 295 700 est - Forum Excel
4 réponses
Bonjour,
ces deux mots peuvent être espacés ou collés.
Est ce que le premier mot ou le deuxieme peuvent etre associes avec un autre mot dans une cellule?
bonjour,
Quand le Find devient complexe, il est préférable de faire une boucle VBA qui vérifie chaque valeur en utilisant un critère aussi complexe que nécessaire.
Comme expliqué dans le paragraphe avant "Exemples", ici: https://docs.microsoft.com/fr-fr/office/vba/api/Excel.Range.Find
Re,
Une boucle avec deux like
Sub test() Valeur1 = "a" Valeur2 = "z" For n = 1 To 7 If Cells(n, 1) Like "*" & Valeur1 & "*" And Cells(n, 1) Like "*" & Valeur2 & "*" Then MsgBox Cells(n, 1) End If Next n End Sub
A vous d'adapter vu que nous ne savons pas ce que en ferez.
Si les deux valeurs sont inversees ex: za ou z a il y a detection
EDIT : Basic sélectionné pour la coloration.
Bonjour,
Une facon de faire avec find
Sub test_2() Valeur1 = "a" Valeur2 = "z" Valeur = "*" & Valeur1 & "*" & Valeur2 & "*" Set Plage = Range("A1:A10") Set cell = Plage.Cells.Find(what:=Valeur, LookAt:=xlPart) If cell Is Nothing Then msg = Valeur & " n'existe pas" Else msg = "Valeur: " & Valeur & "-->" & cell.Address End If MsgBox msg End Sub 'celle que j'utilise pour recherches multiples Sub test_3() Valeur1 = "a" Valeur2 = "z" Valeur = "*" & Valeur1 & "*" & Valeur2 & "*" Set Plage = Range("A2:A10") Nb = Application.CountIf(Plage, Valeur) If Nb > 0 Then lig = 1 Adr = Columns(1).Find(Valeur, Cells(lig, 1), , LookAt:=xlPart).Address msg = "Valeur: " & Valeur & "-->" & Adr Else msg = Valeur & " n'existe pas" End If MsgBox msg End Sub
oui enfaite ils correspondent chacun à une valeur dans une cellule
Re,
Est-ce que ces deux mots sont toujours en "couple" dans les cellules?
ex:
M1=a, M2=z
a z
ax ?
az
sz ?
a ou z ne sont jamais avec un autre mot
oui il peut y avoir a et z , a et x, s et z
ca peut changer