Bonjour,
(cette fois je ne fais pas de crossing)
Petit problème liée à une macro dont voici le code
Pour expliquer le contexte : j'ai un classeur avec deux feuilles.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 Sub Macro5() Dim Resultat As Variant, Derlig As Long, Derlig1 As Long, Dercol As Long, Dercol1 As Long, i As Integer Derlig = ThisWorkbook.Sheets("Feuil1").UsedRange.SpecialCells(xlCellTypeLastCell).Row Derlig1 = ThisWorkbook.Sheets("DT Clients").UsedRange.SpecialCells(xlCellTypeLastCell).Row Dercol = ThisWorkbook.Sheets("Feuil1").UsedRange.SpecialCells(xlCellTypeLastCell).Column Dercol1 = ThisWorkbook.Sheets("DT Clients").UsedRange.SpecialCells(xlCellTypeLastCell).Column For i = Derlig To 1 Step -1 On Error Resume Next Resultat = WorksheetFunction.VLookup(Range("D" & i), Sheets("DT Clients").Range("A:D"), 2, False) If IsNull(Cells(i, Dercol + 1).Value) Then Sheets("Feuil1").Cells(i, Dercol + 1).Value = "issou" Else: Cells(i, Dercol + 1).Value = Resultat End If Next i End Sub
Dans la première feuille, j'ai des numéros de dossiers techniques (qui prennent la forme de lettres et/ou chiffres tel "4GODV19" ou "ARCFREE"), et des montants pour chacun d'eux.
Dans la deuxième feuille, j'ai des numéros de dossiers techniques (dont certains n'ont aucune correspondance avec ceux de la première feuille) reliés à des noms de client (la feuille s'étend sur + de 8000 lignes...).
A savoir : un client peut être lié à plusieurs dossiers techniques, et on n'est pas sur de retrouver le n° de dossier technique de la 1ère feuille dans la deuxième feuille (et donc de se retrouver avec #N/A après utilisation de formule RECHERCHEV).
Mais je m'égare. Mon but est bien évidemment d'utiliser RECHERCHEV pour associer les numéros de DT de la 1ere feuille à des noms de client.
Le problème est que, sans le OnErrorResumeNext de mon code, lorsque j'exécute la macro, je me tape systématiquement une erreur 1004 (impossible de lire la propriété VLOOKUP de la méthode worksheet function).
Je pourrais faire la formule à la main, mais cette bribe de macro rentre dans le cadre d'un projet d'automatisation du traitement de fichiers, et c'est là où je coince.
J'ai tout essayé pour essayer de la faire fonctionner mais pas moyen.
Dans l'attente de vous lire, merci.
EDIT : J'ai oublié de dire mais mais le If ne fonctionne pas puisque la colonne où sont censés être inscrits les résultats reste vide!
Partager