Fonction de recherche - VB/VBA/VBS - Programmation
Marsh Posté le 11-12-2006 à 12:28:18
tu peux expliciter ton critère stp ? s'agit-il d'un tri, d'une sélection de valeur, que représentent les 2.4 et co ??
merci
Marsh Posté le 11-12-2006 à 12:49:41
Bonjour,
Pour voir si j'ai deviné:
2, 4 signifie que je trouve l'équivalent de la ligne 1 (110000,00) en ligne 2 puis en ligne 4
1, 4 signifie que je trouve l'équivalent de la ligne 2 (110000,00) en ligne 1 puis en ligne 4
etc..etc..
Cordialement
Marsh Posté le 11-12-2006 à 14:06:43
seniorpapou a écrit : Bonjour, |
Oui c'est tout à fait ça! une idée?
Marsh Posté le 11-12-2006 à 16:24:19
Bonsoir,
Une idée à améliorer bien entendu:
Sub Macro1()
Columns("C:C" ).Select
Selection.NumberFormat = "@"
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Cells(60000, 2).End(xlUp).Select
fincol = Selection.Row
For i = 1 To fincol
maval = Cells(i, 2)
Cells(i, 3) = " "
virg = " "
Columns("B:B" ).Select
With Selection
Set c = .Find(maval, after:=Cells(64000, 2), LookIn:=xlValues)
cc = c.Row
If (Not c Is Nothing) And c.Row <> i Then
Cells(i, 3) = virg & Str(Cells(c.Row, 1).Value)
virg = ", "
End If
firstAddress = c.Address
Do
Set c = .FindNext(c)
If (Not c Is Nothing) And c.Row <> i And c.Address <> firstAddress Then
Cells(i, 3) = Cells(i, 3) & virg & Str(Cells(c.Row, 1).Value)
virg = ", "
End If
Loop While Not c Is Nothing And c.Address <> firstAddress
End With
Next
End Sub
Cordialement
Marsh Posté le 15-12-2006 à 10:04:59
seniorpapou,
Je pense que ça m'a l'air vraiment pas mal. Je teste plus en profondeur et je confirme l'excellent fonctionnement.
Merci
Marsh Posté le 11-12-2006 à 11:38:10
Bonjour,
je dispose d'un tableau comme celui-ci:
Col A Col B Col C
1 110 000,00 2, 4
2 110 000,00 1, 4
3 92 000,00 5
4 110 000,00 1,2
5 92 000,00 3
6 56 000,00
7 45 000,00
Je veux afficher dans la colonne C la liste des valeurs de la colonne A avec comme critère de recherche la colonne B. En rouge les valeurs que je souhaite obtenir avec la formule.
Merci.
Message édité par Dolu007 le 11-12-2006 à 11:38:51