cs_sd69
Messages postés2Date d'inscriptionmercredi 14 décembre 2011StatutMembreDernière intervention15 décembre 2011
-
14 déc. 2011 à 18:03
gourmand86
Messages postés33Date d'inscriptionmercredi 6 octobre 2010StatutMembreDernière intervention 9 janvier 2012
-
20 déc. 2011 à 14:31
Bonjour,
Je cherche à faire en VBA une recherche de la valeur "X" dans une matrice.
Ex :
étape 1 :
pour une ligne donnée, je souhaite chercher l'ensemble des valeurs "X" de mon tableau.
étape 2 : à chaque fois que la valeur "X" et trouvé, je souhaite récupérer le nom de l'entête de colonne (ex :N°46) et le copier dans mon onglet "synthèse"
je souhaiterais ainsi que cette recherche soit faite sur l'ensemble de mes lignes.
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 14 déc. 2011 à 18:37
Bonjour,
1) VBA n'est pas VB6 !
Nous te serions reconnaissant de bien vouloir dorénavant apporter le plus grand soin au choix de la section dans laquelle tu ouvre une discussion (c'est important)
2) ton
Voici un exemple excel
est probablement un fichier que tu es seul à pouvoir voir (un lien vers ton disque).
Il n'est à ce propos ni utile ni recommandé de procéder par "mise à disposition d'un classeur"
Tes explications, par contre, ne sont pas vraiment claires, notamment en ce qui concerne l'étape 1
Nous aimerions enfin que tu nous montres le code que tu as au moins tenté d'écrire.
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
cs_sd69
Messages postés2Date d'inscriptionmercredi 14 décembre 2011StatutMembreDernière intervention15 décembre 2011 15 déc. 2011 à 14:39
Bonjour,
Voici le bout de code que j'ai rédigé et qui me fait la recherche sur la première ligne et la première valeur rencontrée.
Il me recopie bien l'entete de colonne dans un autre onglet.
Par contre, je souhaiterai maintenant que cela me recherche la seconde valeur sur la ligne 1 de ma plage, que cela la copie en N3 sur l'onglet Synthèse et
ensuite que cela boucle sur la ligne suivante.
D'avance merci.
-----------------------------------------------
Sub test()
'
' Test Macro
'sélection de l'onglet
Sheets("Matrice").Select
valeur = "X" '
' sélectionne la plage dans laquelle la recherche est effectuée
'recherche de la valeur X dans la ligne
ActiveSheet.Cells.Find(What:=valeur, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False) _
.Select
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 15 déc. 2011 à 16:15
Ce bout de code ne nous apporte pas non plus des explications claires sur les tenants et aboutissants exacts !
Veux-tu bien les exposer avec précisions, s'il te plait ?
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
gourmand86
Messages postés33Date d'inscriptionmercredi 6 octobre 2010StatutMembreDernière intervention 9 janvier 2012 20 déc. 2011 à 14:31
Voila comment j’aurais fais :
Dim j As inetger
j = 1
For i = 1 To 20
If Sheets("tableau").Cells(i, 2) = X Then 'recherche X dans la ligne
'si on trouve X, on copie l'entète dans la feuil synthèse
Sheets("synthèse").Cells(1, j) = Sheets("tableau").Cells(i, 1)
End If
Next i