Dim a, b, d, e, f, g As String
'Sélection de la valeur de !PARAMETRE E10 et mise en variable
Sheets("parametre").Visible = True
Sheets("parametre").Unprotect "enfant"
'verification des cellules à copier
If Range("ae7").Value = "" Then
MsgBox ("Manque le N° du compte")
ElseIf Sheets("donne").Range("e21").Value = "" Then
MsgBox ("Le code utilisateur n'est pas renseigné")
ElseIf Application.WorksheetFunction.CountIf(Sheets("statses").Range("C2:C" & Sheets("statses").Range("c65536").End(xlUp).Row), Range("ae7").Value) > 0 Then
MsgBox ("Ce compte est déjà présent dans la feuille statses")
Else
'copie des cellules
a = Range("ae6").Value
b = Range("ae7").Value 'nom_prenom
d = Range("ae9").Value 'téléphone
e = Range("ae8").Value 'n° compte
f = Range("ae11").Value 'Réf pièce
g = Range("ae13").Value 'code agent
'selection de la feuille de destination
Sheets("statses").Select
'selection de la première cellule de destination
Range("b1").Select
'vérification de la cellule de destination
If ActiveCell.Value = "" Then 'si la cellule est vide, on colle
ActiveCell = a
ActiveCell.Offset(0, 1) = b
ActiveCell.Offset(0, 2) = e
ActiveCell.Offset(0, 3) = d
ActiveCell.Offset(0, 4) = f
ActiveCell.Offset(0, 5) = g
Sheets("PARAMETRE").Select
Range("D3").Select
Exit Sub
Else 'la cellule n'est pas vide
'on boucle tant que la cellule de destination n'est pas vide
Do While ActiveCell.Value <> ""
'selection de la cellule du dessous
ActiveCell.Offset(1, 0).Select
'si la cellule est vide, on colle
If ActiveCell.Value = "" Then
ActiveCell = a
ActiveCell.Offset(0, 1) = b
ActiveCell.Offset(0, 2) = e
ActiveCell.Offset(0, 3) = d
ActiveCell.Offset(0, 4) = f
ActiveCell.Offset(0, 5) = g
Sheets("PARAMETRE").Select
Range("D3").Select
Exit Sub
Else
'selection de la cellule du dessous
ActiveCell.Offset(1, 0).Select
End If
Loop 'on boucle tant que la cellule n'est pas vide
End If
'si la cellule est vide, fin de la boucle, et on colle
ActiveCell = a
ActiveCell.Offset(0, 1) = b
ActiveCell.Offset(0, 2) = e
ActiveCell.Offset(0, 3) = d
ActiveCell.Offset(0, 4) = f
ActiveCell.Offset(0, 5) = g
Sheets("PARAMETRE").Select
Range("D3").Select
Sheets("parametre").Protect "enfant"
End If
End Sub