Bonjour à tous,
Je souhaite insérer l'équivalent d'une fonction Sierreur dans le code ci-dessous afin que les fonctions VLOOKUP me renvoient "0" à la place du traditionnel #N/A.
Quelqu'un aurait-il une idée de comment s'y prendre ?
'Sub Ventes_et_stocks_test()
Dim f$, h&, c As Range, fich$
f = "Ventes et Stocks Magasins"
h = Application.Match("TOTAL", [C:C], 0) - 7 'la hauteur du tableau peut varier
Application.ScreenUpdating = False
Application.DisplayAlerts = False 'si des fichiers n'existent pas
For Each c In Range("E6", Cells(6, Columns.Count).End(xlToLeft))
If c = "Vtes" Then
fich = "Jeunesse S" & Val(Replace(c(0, 0), "Semaine", "")) & ".xlsx"
c(2).Resize(h) = "=VLOOKUP(RC1,'[" & fich & "]" & f & "'!R4C1:R20000C22,21,0)"
c(2, 2).Resize(h) = "=VLOOKUP(RC1,'[" & fich & "]" & f & "'!R4C1:R20000C22,22,0)"
End If
Next
'
End Sub
Merci d'avance pour vos réponses
Je souhaite insérer l'équivalent d'une fonction Sierreur dans le code ci-dessous afin que les fonctions VLOOKUP me renvoient "0" à la place du traditionnel #N/A.
Quelqu'un aurait-il une idée de comment s'y prendre ?
'Sub Ventes_et_stocks_test()
Dim f$, h&, c As Range, fich$
f = "Ventes et Stocks Magasins"
h = Application.Match("TOTAL", [C:C], 0) - 7 'la hauteur du tableau peut varier
Application.ScreenUpdating = False
Application.DisplayAlerts = False 'si des fichiers n'existent pas
For Each c In Range("E6", Cells(6, Columns.Count).End(xlToLeft))
If c = "Vtes" Then
fich = "Jeunesse S" & Val(Replace(c(0, 0), "Semaine", "")) & ".xlsx"
c(2).Resize(h) = "=VLOOKUP(RC1,'[" & fich & "]" & f & "'!R4C1:R20000C22,21,0)"
c(2, 2).Resize(h) = "=VLOOKUP(RC1,'[" & fich & "]" & f & "'!R4C1:R20000C22,22,0)"
End If
Next
'
End Sub
Merci d'avance pour vos réponses