Copier coller automatiquement

Fermé
Mohammed - 10 sept. 2015 à 02:32
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 - 14 sept. 2015 à 14:43
Bonjour,
Je sollicite votre aide pour création d'un fichier excel ou des cellules se remplissent automatiquement par les valeurs d'autres cellules. Par exemple dans les cellules fusionnées (H5:J5) je met le nom d'une personne et j'aimerai que cette information soit reportée dans une autre cellule, sinon que ca reste vide.
Aussi, j'aimerai qu'une fois mon fichier est compléter qu'une macro enregistre le fichier automatiquement, idéalement par l'info mise dans les cellules (H5:J5) directement sur le un fichier sur le bureau.

Finalement, je met des dates de naissance dans une cellule, sur une autre cellule j'aimerai avoir l'age et si ca depasse un certain seuil, par exemple 16 ans que cette valeur soit en caractères gras et couleur rouge.

Merci beaucoup pour votre aide

A voir également:

1 réponse

Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
14 sept. 2015 à 14:43
Bonjour,

Un peu difficile de comprendre exactement votre demande, il aurait quand même fallut nous joindre le fichier avec www.cjoint.com.

Bon sinon pour ce qui est de remplir automatiquement une autre cellule en fonction de ce qu'il y a dans H5:J5 il suffit d'écrire :

Sub TEST()

If Range("H5").Value <> "" Then Range("A1").Value = Range("H5").Value 'A supposer que la valeur en (H5:J5) se reporte sur A1

End Sub


Pour ce qui est d'enregistrer automatiquement le fichier sur le bureau avec le nom inscrit en (H5:J5), je vous propose d'utiliser le code suivant à mettre dans le classeur en mode SelectionChange :

Dim chemin As String, fichier As String

If Range("A5:J5") <> "" And Range("X:Y") <> "" Then 'a répéter autant de fois que vous avez de cellules à remplir pour que votre fichier soir "complété".
chemin = "C:\Users/..." 'Mettre le chemin de votre bureau
fichier = chemin & "\" & Range("H5") & ".xls" '
ActiveWorkbook.SaveAs fichier


Pour votre dernière question, voici un code :

Sub AGE()

DL = Cells(Application.Rows.Count, 1).End(xlUp).Row 'A supposer que la colonne de référence (la plus longue) soit la colonne 1

For i = 1 To DL 'A supposer que le code commence en ligne 1

Range("B" & i) = DateDiff("yyyy", Range("A" & i), Date) 'Si la date de naissance est en A et que l'âge est en B

If Range("A" & i) > 16 Then
     With Range("A" & i)
           .Font.Bold = True
           .Font.Color = RGB(255, 0, 0)
     End With
End If

Next i

End Sub


Si vous avez besoin de plus d'informations ou si les codes ne conviennent pas, merci de bien vouloir joindre un fichier anonymé avec de plus amples explications sur lequel je pourrai travailler via le site https://www.cjoint.com/

Cordialement.
0