Vba

Résolu/Fermé
sid3show79 Messages postés 19 Date d'inscription mercredi 13 avril 2016 Statut Membre Dernière intervention 23 décembre 2019 - 15 avril 2016 à 04:04
sid3show79 Messages postés 19 Date d'inscription mercredi 13 avril 2016 Statut Membre Dernière intervention 23 décembre 2019 - 15 avril 2016 à 18:08
bonjour,

je souhaite pouvoir rechercher une valeur avec 2 conditions est-ce possible en vlookup?

Worksheets("Feuil2").Range("B3") = WorksheetFunction.VLookup(Font.Bold = False & "pneu", Worksheets("Feuil1").Range("A1:C10"), 3, False)

il y a deux cellule qui porte le meme nom mais je ne veux pas la valeur de celui en caractere gras.

merci

2 réponses

Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523
15 avril 2016 à 07:07
Bonjour,

Tu peux utiliser la méthode Find :
Sub Test()
Dim C As Range
Dim firstAddress As String
Set C = Worksheets("Feuil1").Columns(1).Find("pneu", , xlValues, xlWhole)
If Not C Is Nothing Then
firstAddress = C.Address
Do
If C.Font.Bold = False Then
Worksheets("Feuil2").Range("B3") = C.Offset(, 2).Value
Exit Do
End If
Set C = Worksheets("Feuil1").Columns(1).FindNext(C)
Loop While Not C Is Nothing And C.Address <> firstAddress
End If
End Sub

A+
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 305
Modifié par michel_m le 15/04/2016 à 09:02
Bonjour

une autre proposition avec nombre de "pneu"= 2
Option Explicit
'-----------------------------
Sub chercher_pneugras()
Dim zone As Range, cellule As Range
Dim Cptr As Integer

Application.ScreenUpdating = False
Set zone = Sheets(1).Range("A1:C10")
With zone
If Application.CountIf(zone, "pneu") = 0 Then GoTo vide
Set cellule = .Find(what:="pneu", LookIn:=xlValues)
For Cptr = 1 To 2
If cellule.Font.Bold = True Then
Sheets(2).Range("B3") = Sheets(1).Cells(cellule.Row, "C")
Exit For
End If
Set cellule = .FindNext(cellule)
Next
End With
Exit Sub

vide:
MsgBox """pneu"" absent dans la zone!", vbExclamation
End Sub


la maquette:
http://www.cjoint.com/c/FDphapbuBYt
 Michel
0
sid3show79 Messages postés 19 Date d'inscription mercredi 13 avril 2016 Statut Membre Dernière intervention 23 décembre 2019
15 avril 2016 à 18:08
Vraiment wow!!

Très apprécié. La premiere fonctionne très bien. J'avais reussi avec un truc de logique sumif mais je veux sortir d'excel. Je vais apprécié la deuxième aussi. C'est pratique pcq ca aide à comprendre.

Merci encore
0