Bonsoir,
Ta macro ne fonctionne pas bien car ta feuille "Liste Perso" possède plusieurs caractères "espace" parasites colonne 3 ou 5
Ligne 46 : DUBOIS# Colette
Dans cette extraction c'est 6 fois la même erreur, mais il y à d'autres caractères "espace" sur d'autres lignes qui le cas échéant produiraient le même effet si ces noms figuraient dans le "PAF"
Il est donc important d'éliminer tous les espaces de fin indésirables dans les colonnes 3 et 5 de ta feuille "Liste Perso" .
La macro sera plus rapide si tu la modifies comme suit :
Private Sub CommandButton3_Click()
Dim i%, k%, kp%, ko%, p%, o%
MsgBox "Cette opération peut prendre quelques secondes."
kp = Sheets("PAF").Range("A10000").End(xlUp).Row
ko = Sheets("Liste_perso").Range("A10000").End(xlUp).Row
For i = 1 To k
Sheets("PAF").Range("A" & i) = UCase(Sheets("PAF").Range("A" & i))
Next
For p = 2 To kp
For o = 2 To ko
If Sheets("PAF").Cells(p, 1) Like "*" & Sheets("Liste_perso").Cells(o, 3) & "*" Then
If Sheets("PAF").Cells(p, 1) Like "*" & Sheets("Liste_perso").Cells(o, 5) & "*" Then
If Not Sheets("PAF").Cells(p, 5) = "DEMANDE ETAT NEANT" Then
With Sheets("Recap_formations")
k = .Range("B10000").End(xlUp).Row + 1
.Cells(k, 2) = Sheets("Liste_perso").Cells(o, 3)
.Cells(k, 3) = Sheets("Liste_perso").Cells(o, 5)
.Cells(k, 4) = Sheets("Liste_perso").Cells(o, 9)
.Cells(k, 5) = Sheets("Liste_perso").Cells(o, 15)
.Cells(k, 6) = Sheets("Liste_perso").Cells(o, 12)
.Cells(k, 7) = "PAF"
.Cells(k, 8) = "CONTINUE"
.Cells(k, 9) = Sheets("PAF").Cells(p, 5)
.Cells(k, 10) = Sheets("PAF").Cells(p, 12)
.Cells(k, 11) = Sheets("PAF").Cells(p, 14)
End With
End If
End If
End If
Next
Next
MsgBox "L'intégration s'est déroulée avec succès."
End Sub
Cette macro supprimera tous les espaces indésirables dans les cellules sélectionnées :
Sub SupprimeEspace()
For Each o In Selection
o.Value = Trim(o)
Next
End Sub
A+