1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| Sub essai()
Dim verif As Range 'variable qui vérifie si ta valeur existe ou non
x = Sheets(1).Range("C4:C" & Sheets(1).Range("C:C").End(xlDown).Row).Count 'compte le nombre de ligne dans ton tableau 1
y = Sheets(1).Range("I4:I" & Sheets(1).Range("I:I").End(xlDown).Row).Count ''compte le nombre de ligne dans ton tableau 1
For j = 4 To y + 4 'pour chaque ligne de ton tableau 2
a = Sheets(1).Range("N1:N" & Sheets(1).Range("N:N").End(xlDown).Row).Count + 1 'dernière ligne T3
m = 0 'variable vérifiant si elle existe dans ton tableau 1
For i = 4 To x + 4 'pour chaque ligne de ton tableau 1
If Sheets(1).Cells(j, 9).Value = Sheets(1).Cells(i, 3).Value Then m = 1 'si la ligne de ton tableau 2 = ligne tableau 1
Next i 'ligne suivante T1
If m = 0 Then 'si pas d'occurance entre T1 et T2
PNR = 1 - (Sheets(1).Range("J19").Value - Sheets(1).Cells(j, 10).Value) / Sheets(1).Range("J19").Value 'ton histoire de %
PNR = Format(PNR, "0.00%") 'le format voulu
Set verif = Sheets(1).Range("N:N").Find(Sheets(1).Cells(j, 9).Value) 'on cherche si on ne l'a pas déjà
If verif Is Nothing Then 'si on l'a pas déjà
Sheets(1).Cells(a, 14).Value = Sheets(1).Cells(j, 9).Value 'on récupère le nom
texte = Sheets(1).Cells(j, 7).Value & Sheets(1).Cells(j, 8).Value & ", pourcentage PNR : " & PNR 'on applique l'histoire du PNR
Sheets(1).Cells(a, 15).Value = texte 'on met l'histoire du PNR dans la colonne suivante
Else 'si on l'a déjà
texte = Sheets(1).Cells(verif.Row, 15).Value 'on récupère ce qu'il y avait déjà
texte = texte & "; " & Sheets(1).Cells(j, 7).Value & Sheets(1).Cells(j, 8).Value & ", pourcentage PNR : " & PNR 'on ajoute la nouvelle ligne
Sheets(1).Cells(verif.Row, 15).Value = texte 'on mets le tout à la place
End If
End If
Next j 'ligne suivante pour T2
End Sub |
Partager