RechercheV

bonjour

j'ai besoin d'un oeil nouveau, je suis habitué à écrire la fonction rechercheV en vba mais là je" beugue " j'ai surment une erreur mais çà fait plus d'une heure que je cherche.

Si quelqu'un peut regarder le fichier et me dire ou est l'erreur le l'en remercie par avance

j' ai renseigné 4 champs manuellement

cordialement

philippe

Sub Macro2()

'

' Macro2 Macro

Dim ligne As Integer

ligne = 3

Do While Cells(ligne, 1).Value <> ""

'type bprf

With Cells(ligne, 4)

Formula = "=IFERROR(VLOOKUP(RC[-1],R3C21:R20C24,3,FALSE),"""")"

.Value = .Value

End With

'type palette

With Cells(ligne, 5)

Formula = "=IFERROR(VLOOKUP(RC[-2],R3C21:R20C24,4,FALSE),"""")"

.Value = .Value

End With

ligne = ligne + 1

Loop

End Sub

5test-recherhv.xlsm (25.53 Ko)

Bonjour,

Fais précéder Formula par un point, voire même écris .FormulaR1C1

Pour le reste, je suis en excel FR dont je ne peux pas vraiment tester.

Bonsoir,

Un essai :

Sub Recherche()
    derLig = Range("A" & Rows.Count).End(xlUp).Row
    'type bprf et palette
    With Range("D3:E" & derLig)
        .Formula = "=IFERROR(INDEX(C[19],MATCH(RC3,C21,FALSE)),"""")"
        .Value = .Value
    End With
End Sub

Bonjour,

Bonjour Steelson,

Une proposition à étudier.

Cdlt.

1test-recherhv.xlsm (36.18 Ko)
Public Sub Test()
Dim lastRow As Long, rw As Long
    With ActiveSheet
        lastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
        For rw = 3 To lastRow
            If Not IsEmpty(.Cells(rw, 3)) Then
                .Cells(rw, 4).Value = WorksheetFunction.VLookup(.Cells(rw, 3).Value, [Informations_], 3, False)
                .Cells(rw, 5).Value = WorksheetFunction.VLookup(.Cells(rw, 3).Value, [Informations_], 4, False)
            End If
        Next rw
    End With
End Sub

bonsoir

je vous remercie pour votre aide à tous. Comme l'a indiqué Steelson il me manquer le point devant Formula

je me doutais bien que c'était une erreur de frappe.

merci encore à tous

philippe

Rechercher des sujets similaires à "recherchev"