Sub URSSAF()
Dim i As Long
Dim j As Long
Dim rep As Variant
Dim reponse As Variant
rep = MsgBox("Vous allez écraser les données de la feuille URSSAF", vbYesNo)
If rep = 7 Then Exit Sub
With Sheets("Urssaf")
.Range("A2:q35").ClearContents
.Range("D2") = "Année" & Year(Now)
Do
reponse = Application.InputBox(Prompt:="Veuillez indiquer la périodicité", Type:=1, Default:="1 : pour mensuel 2 : pour trimestriel")
Select Case reponse
Case ""
MsgBox "vous n'avez pas fait de saisies!" & Chr(13) & "recommencez!", vbCritical, "GRRrrrr!"
Case False
Exit Sub
Case 1
' création de l'entête
j = 5
For i = 12 To 1 Step -1
.Cells(3, j) = MonthName(i)
j = j + 1
Next i
Exit Do
Case 2
' création de l'entête
j = 5
For i = 4 To 1 Step -1
.Cells(3, j) = i & "T"
j = j + 1
Next i
Exit Do
Case Else
Call MsgBox("Réponse erronée", vbExclamation, "")
End Select
Loop
End With
With Sheets("CodeDucs")
For i = 2 To .Range("C65536").End(xlUp).Row
If .Cells(i, 1) = "X" Then
j = WorksheetFunction.Max(Sheets("Urssaf").Range("B65536").End(xlUp).Row + 1, 4)
Sheets("Urssaf").Cells(j, 1) = .Cells(i, 2)
Sheets("Urssaf").Cells(j, 2) = .Cells(i, 3)
Sheets("Urssaf").Cells(j, 3) = .Cells(i, 4)
End If
Next i
End With
End Sub