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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
| Option Explicit
Dim fm As Worksheet, f As Worksheet, nom As String, prenom As String, dico As Object
Dim fb As Worksheet
Dim i&, ln&, lgn&, col&
Sub CréerLesFiches2ndeligne()
Application.ScreenUpdating = False
Set fb = ActiveSheet
Set fm = Sheets("model 2nde ligne")
Set dico = CreateObject("Scripting.Dictionary")
For Each f In Worksheets
dico(f.Name) = ""
Next f
Sheets("model 2nde ligne").Visible = True
For ln = 5 To fb.Range("A" & Rows.Count).End(xlUp).Row
nom = fb.Range("A" & ln)
prenom = fb.Range("B" & ln)
If Not dico.exists(nom & " " & prenom) Then
Sheets("model 2nde ligne").Copy after:=Sheets("general 2nde ligne")
ActiveSheet.Name = nom & " " & prenom
Range("G7") = nom
Range("G8") = prenom
Range("G10") = fb.Range("BR" & ln)
Range("G11") = fb.Range("BS" & ln)
Range("G12") = fb.Range("BY" & ln)
Range("E18") = fb.Range("BM" & ln)
Range("I18") = fb.Range("BN" & ln)
Range("E21") = fb.Range("BP" & ln)
Range("I21") = fb.Range("BQ" & ln)
Range("G23") = fb.Range("BO" & ln)
Range("F30") = fb.Range("CM" & ln)
Range("G31") = fb.Range("CG" & ln)
Range("H31") = fb.Range("CF" & ln)
Range("J30") = fb.Range("CL" & ln)
Range("F35") = fb.Range("CH" & ln)
Range("G35") = fb.Range("CI" & ln)
Range("H35") = fb.Range("CJ" & ln)
Range("I35") = fb.Range("CK" & ln)
Range("D39") = fb.Range("CN" & ln)
Range("F39") = fb.Range("CO" & ln)
Range("H39") = fb.Range("CP" & ln)
Range("J39") = fb.Range("CQ" & ln)
Range("D41") = fb.Range("CR" & ln)
Range("F41") = fb.Range("CS" & ln)
Range("H41") = fb.Range("CT" & ln)
Range("J41") = fb.Range("CU" & ln)
Range("D49") = fb.Range("CV" & ln)
Range("F49") = fb.Range("CW" & ln)
Range("J49") = fb.Range("CX" & ln)
Range("H49") = fb.Range("CY" & ln)
Range("D51") = fb.Range("CZ" & ln)
Range("F51") = fb.Range("DA" & ln)
Range("H51") = fb.Range("DB" & ln)
Range("J51") = fb.Range("DC" & ln)
Range("B60") = fb.Range("DD" & ln)
For i = 1 To 8
'ln = Choose(i, 12, 13, 14, 15, 16, 17, 18, 19)
lgn = Choose(i, 13, 13, 33, 33, 53, 53, 73, 73)
col = Choose(i, 3, 9, 3, 9, 3, 9, 3, 9)
Cells(lgn, col).Value = fb.Cells(ln, i + 11).Value
Next i
End If
Next ln
Sheets("model 2nde ligne").Visible = True
End Sub |