Bonjour le forum,
Après pas mal de recherches vaines, je me tourne vers vous pour une aide SVP.
Je cherche à faire l'évolution de la productivité d'une activité, à la semaine.
Je voudrais donc, cf. fichier ci joint, copier la valeur prise par la cellule C16 dans un tableau, ligne 10, tableau portant en vertical une date (ligne 3), une colonne par semaine. La date en question est celle du mercredi. Il s'agit donc, à l'ouverture du fichier, de recopier la valeur dans la bonne cellule si la date en entête de colonne est passée.
J'ai, avec succès, fais une macro qui recopie la dite valeur dans la dernière cellule vide de la bonne ligne du tableau toutes les 10s, mais ce n'est pas tout à fait ce que je veux faire finalement!
Merci pour votre aide!
Cordialement,
Philippe
Après pas mal de recherches vaines, je me tourne vers vous pour une aide SVP.
Je cherche à faire l'évolution de la productivité d'une activité, à la semaine.
Je voudrais donc, cf. fichier ci joint, copier la valeur prise par la cellule C16 dans un tableau, ligne 10, tableau portant en vertical une date (ligne 3), une colonne par semaine. La date en question est celle du mercredi. Il s'agit donc, à l'ouverture du fichier, de recopier la valeur dans la bonne cellule si la date en entête de colonne est passée.
J'ai, avec succès, fais une macro qui recopie la dite valeur dans la dernière cellule vide de la bonne ligne du tableau toutes les 10s, mais ce n'est pas tout à fait ce que je veux faire finalement!
Code:
Sub RechercheDate()
Application.OnTime Now + TimeValue("00:00:10"), "Enregistrer" 'toutes les 10s
End Sub
Sub Enregistrer()
'Initialisation des variables
Dim nomfichiersuivi As String
Dim DerniereColonne As Long
nomfichiersuivi = ActiveWorkbook.Name ' affectation nom du fichier de suivi courant
With Workbooks(nomfichiersuivi).Worksheets("Suivi")
'recherche la première cellule vide sur la ligne 10 du tableau et y enregistre la valeur de prod C16
Cells(10, 54).End(xlToLeft).Offset(0, 1).Value = .Range("C16")
End With
If ThisWorkbook.Worksheets("Suivi").Range("A1") = 1 Then 'si D1 est égal à 1 la recherche fonctionne
RechercheDate
End If
End Sub
Cordialement,
Philippe