bonjour,
voila je fais une recherche d une valeur avec le code vba afin de connaitre
la ligne de cette valeur dans une tableau.
j utilise cette formule
Set c = Worksheets("calcul").Range("a1:a400").Find(ab, LookIn:=xlValues)
ligne=c.row
ou ab represente une variable qui prend la valeur que je lui donne comme
ab="AMBP17A" (la recherche marche avec cette valeur)
mais voila cela ne marche pas pour toutes les valeurs comme par exemple
ab="28SAP12I" ou ab="28".
quelqu un pet m aider a trouver un code pouvant faire une recherche dans un
colonne et marchant avec n importe quelle valeur a chercher.
merci de votre aide.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
docm
Bonjour nono. Sous toutes réserves, j'ai ajouté LookAt:=xlWhole à ta syntaxe. Et ça semble fonctionner. Gérard.
Set c = Worksheets("calcul").Range("a1:a400"). _ Find(ab, LookIn:=xlValues, LookAt:=xlWhole)
"nono" wrote in message news:
bonjour, voila je fais une recherche d une valeur avec le code vba afin de connaitre
la ligne de cette valeur dans une tableau. j utilise cette formule Set c = Worksheets("calcul").Range("a1:a400").Find(ab, LookIn:=xlValues) ligne=c.row ou ab represente une variable qui prend la valeur que je lui donne comme
ab="AMBP17A" (la recherche marche avec cette valeur) mais voila cela ne marche pas pour toutes les valeurs comme par exemple ab="28SAP12I" ou ab="28". quelqu un pet m aider a trouver un code pouvant faire une recherche dans un
colonne et marchant avec n importe quelle valeur a chercher. merci de votre aide.
Bonjour nono.
Sous toutes réserves, j'ai ajouté LookAt:=xlWhole à ta syntaxe.
Et ça semble fonctionner.
Gérard.
Set c = Worksheets("calcul").Range("a1:a400"). _
Find(ab, LookIn:=xlValues, LookAt:=xlWhole)
"nono" <nono@nono.fr> wrote in message
news:uJLJmQTNEHA.892@TK2MSFTNGP09.phx.gbl...
bonjour,
voila je fais une recherche d une valeur avec le code vba afin de
connaitre
la ligne de cette valeur dans une tableau.
j utilise cette formule
Set c = Worksheets("calcul").Range("a1:a400").Find(ab, LookIn:=xlValues)
ligne=c.row
ou ab represente une variable qui prend la valeur que je lui donne
comme
ab="AMBP17A" (la recherche marche avec cette valeur)
mais voila cela ne marche pas pour toutes les valeurs comme par exemple
ab="28SAP12I" ou ab="28".
quelqu un pet m aider a trouver un code pouvant faire une recherche dans
un
colonne et marchant avec n importe quelle valeur a chercher.
merci de votre aide.
Bonjour nono. Sous toutes réserves, j'ai ajouté LookAt:=xlWhole à ta syntaxe. Et ça semble fonctionner. Gérard.
Set c = Worksheets("calcul").Range("a1:a400"). _ Find(ab, LookIn:=xlValues, LookAt:=xlWhole)
"nono" wrote in message news:
bonjour, voila je fais une recherche d une valeur avec le code vba afin de connaitre
la ligne de cette valeur dans une tableau. j utilise cette formule Set c = Worksheets("calcul").Range("a1:a400").Find(ab, LookIn:=xlValues) ligne=c.row ou ab represente une variable qui prend la valeur que je lui donne comme
ab="AMBP17A" (la recherche marche avec cette valeur) mais voila cela ne marche pas pour toutes les valeurs comme par exemple ab="28SAP12I" ou ab="28". quelqu un pet m aider a trouver un code pouvant faire une recherche dans un
colonne et marchant avec n importe quelle valeur a chercher. merci de votre aide.
AV
ligne = Application.Match(ab, [calcul!A1:A400], 0)
AV
ligne = Application.Match(ab, [calcul!A1:A400], 0)
Le chiffre 42 ou une chaîne de caractère "42", ce n'est pas la même chose...et c'est ce qui mystifie la fonction "Match()".
Cependant ceci fonctionne très bien nonobstant la nuance énoncée précédemment .
On Error Resume Next ligne = [calcul!A1:A400].Find(ab, LookIn:=xlValues, LookAt:=xlWhole).Row
Salutations!
"docm" a écrit dans le message de news: Bonjour AV.
La fonction Match me cause le problème suivant: ab = 28 ligne = Application.Match(ab, [calcul!A1:A400], 0) fonctionne bien.
ab = "28" ligne = Application.Match(ab, [calcul!A1:A400], 0) ne fonctionne pas.
Gérard
"AV" wrote in message news:#
ligne = Application.Match(ab, [calcul!A1:A400], 0)
AV
AV
La fonction Match me cause le problème suivant: ab = 28 ligne = Application.Match(ab, [calcul!A1:A400], 0) fonctionne bien.
ab = "28" ligne = Application.Match(ab, [calcul!A1:A400], 0) ne fonctionne pas.
Ben justement elle marche très bien (trop bien ?) puisque, comme le fait remarquer fort justement Denis, on ne cherche pas, dans les 2 cas, la même chose (num ou alphanum) ! Si la plage de recherche ne contient que des valeurs numériques ou des valeurs qui "en ont l'allure" :
ligne = Application.Match(ab * 1, [calcul!A1:A400], 0)
AV
La fonction Match me cause le problème suivant:
ab = 28
ligne = Application.Match(ab, [calcul!A1:A400], 0)
fonctionne bien.
ab = "28"
ligne = Application.Match(ab, [calcul!A1:A400], 0)
ne fonctionne pas.
Ben justement elle marche très bien (trop bien ?) puisque, comme le fait
remarquer fort justement Denis, on ne cherche pas, dans les 2 cas, la même chose
(num ou alphanum) !
Si la plage de recherche ne contient que des valeurs numériques ou des valeurs
qui "en ont l'allure" :
ligne = Application.Match(ab * 1, [calcul!A1:A400], 0)
La fonction Match me cause le problème suivant: ab = 28 ligne = Application.Match(ab, [calcul!A1:A400], 0) fonctionne bien.
ab = "28" ligne = Application.Match(ab, [calcul!A1:A400], 0) ne fonctionne pas.
Ben justement elle marche très bien (trop bien ?) puisque, comme le fait remarquer fort justement Denis, on ne cherche pas, dans les 2 cas, la même chose (num ou alphanum) ! Si la plage de recherche ne contient que des valeurs numériques ou des valeurs qui "en ont l'allure" :
ligne = Application.Match(ab * 1, [calcul!A1:A400], 0)
AV
docm
Bonjour Denis. Je te remercie. Je vais donc préférer la fonction Find qui est capable de trouver aussi bien le chiffre 42 que la chaîne de caractère "42".
Amicalement.
"michdenis" wrote in message news:
Bonjour docm,
Le chiffre 42 ou une chaîne de caractère "42", ce n'est pas la même chose...et c'est ce qui mystifie la fonction
"Match()".
Cependant ceci fonctionne très bien nonobstant la nuance énoncée précédemment .
On Error Resume Next ligne = [calcul!A1:A400].Find(ab, LookIn:=xlValues, LookAt:=xlWhole).Row
Salutations!
"docm" a écrit dans le message de news:
Bonjour AV.
La fonction Match me cause le problème suivant: ab = 28 ligne = Application.Match(ab, [calcul!A1:A400], 0) fonctionne bien.
ab = "28" ligne = Application.Match(ab, [calcul!A1:A400], 0) ne fonctionne pas.
Gérard
"AV" wrote in message news:#
ligne = Application.Match(ab, [calcul!A1:A400], 0)
AV
Bonjour Denis.
Je te remercie. Je vais donc préférer la fonction Find qui est capable de
trouver
aussi bien le chiffre 42 que la chaîne de caractère "42".
Amicalement.
"michdenis" <michdenis@hotmail.com> wrote in message
news:OfTLIqcNEHA.3016@tk2msftngp13.phx.gbl...
Bonjour docm,
Le chiffre 42 ou une chaîne de caractère "42", ce n'est pas la même
chose...et c'est ce qui mystifie la fonction
"Match()".
Cependant ceci fonctionne très bien nonobstant la nuance énoncée
précédemment .
On Error Resume Next
ligne = [calcul!A1:A400].Find(ab, LookIn:=xlValues, LookAt:=xlWhole).Row
Salutations!
"docm" <docmarti@spamcolba.net> a écrit dans le message de
news:OFfZrfcNEHA.556@TK2MSFTNGP10.phx.gbl...
Bonjour AV.
La fonction Match me cause le problème suivant:
ab = 28
ligne = Application.Match(ab, [calcul!A1:A400], 0)
fonctionne bien.
ab = "28"
ligne = Application.Match(ab, [calcul!A1:A400], 0)
ne fonctionne pas.
Gérard
"AV" <alain.vallon@wanadoo.fr> wrote in message
news:#yGORaZNEHA.1616@TK2MSFTNGP12.phx.gbl...
ligne = Application.Match(ab, [calcul!A1:A400], 0)
Bonjour Denis. Je te remercie. Je vais donc préférer la fonction Find qui est capable de trouver aussi bien le chiffre 42 que la chaîne de caractère "42".
Amicalement.
"michdenis" wrote in message news:
Bonjour docm,
Le chiffre 42 ou une chaîne de caractère "42", ce n'est pas la même chose...et c'est ce qui mystifie la fonction
"Match()".
Cependant ceci fonctionne très bien nonobstant la nuance énoncée précédemment .
On Error Resume Next ligne = [calcul!A1:A400].Find(ab, LookIn:=xlValues, LookAt:=xlWhole).Row
Salutations!
"docm" a écrit dans le message de news:
Bonjour AV.
La fonction Match me cause le problème suivant: ab = 28 ligne = Application.Match(ab, [calcul!A1:A400], 0) fonctionne bien.
ab = "28" ligne = Application.Match(ab, [calcul!A1:A400], 0) ne fonctionne pas.
Gérard
"AV" wrote in message news:#
ligne = Application.Match(ab, [calcul!A1:A400], 0)