Comment executer une macro avec la condition "SI"

Fermé
balou11 Messages postés 26 Date d'inscription jeudi 17 janvier 2013 Statut Membre Dernière intervention 1 juin 2022 - 17 janv. 2013 à 13:23
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 - 18 janv. 2013 à 14:57
Bonjour,
Je voudrais que lorsque qu'un utilisateur renseigne la cellule C3 (il y met son nom), la date et l'heure se renseigne automatiquement dans la cellule D3.
Je pensais donc utiliser en D3 la fonction "si" mais cela ne fonctionne pas :

=SI(C3<>"";il faudrait executer une macro de date et heure;"")

Par avance merci
A voir également:

5 réponses

Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
17 janv. 2013 à 13:28
Bonjour balou11,

code à insérer dans l'onglet approprié:

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
    If (Target.Column = 3) Then Cells(Target.Row, 4).Value = Now()
End Sub
0
via55 Messages postés 14504 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 21 décembre 2024 2 738
17 janv. 2013 à 13:56
Bonjour,

Pour compléter
sans passer par le VBA la formule est :
=si(C3<>"";MAINTENANT();"")
Ne pas oublier dans Format de cellule d'ajuster le format Date pour que s'affichent la date et l'heure
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
Modifié par Heliotte le 17/01/2013 à 14:07
Merci via55,

J'ai donné le code de la macro car c'est ce qui avait été demandé.
0
via55 Messages postés 14504 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 21 décembre 2024 2 738
17 janv. 2013 à 15:58
Oui Heliotte j'avais compris, c'était un complément pour info
Un peu lourd de passer par une macro juste pour ça non?
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
17 janv. 2013 à 16:05
Tout à fait via55.

Je pense qu'une macro ne doit être faite que si les formules d'Excel ne permettent pas d'atteindre son but ou pour des codes complexes.
0
balou11 Messages postés 26 Date d'inscription jeudi 17 janvier 2013 Statut Membre Dernière intervention 1 juin 2022
18 janv. 2013 à 09:59
Bonjour a tout les 2, (via55 et Heliotte)
Alors en ce qui concerne la formule
=si(C3<>"";MAINTENANT();"")
le probleme c'est que la valeur va changer en ouvrant le classeur alors que cette valeur ne doit absolument pas changer. C'est pour cela que je voulais passer par une macro. J'avous que je ne l'avais pas précisé.

Par contre le code donneé par heliotte est parfait, le top, serait que :
une fois que C3 est renseigne et que la date s'est inscrit en D3 ces 2 cellules soit verouillées et que l'on ne puisse pas revenir dessus ! ! !
Encore merci pour vos réponses
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
18 janv. 2013 à 10:11
Bonjour balou11,

Et dans le cas où tu changes la valeur de "C3" .. c'est l'ancienne date qui doit restée ou c'est la nouvelle date qu'il faut réécrire ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
balou11 Messages postés 26 Date d'inscription jeudi 17 janvier 2013 Statut Membre Dernière intervention 1 juin 2022
18 janv. 2013 à 11:18
Il faut garder la premiere information (date et heure) l'utilisateur ne doit pas pouvoir modifier la date (meme s'il change de nom le lendemain) Je pense qu'il faudrait peut etre verouiller la colonne D
En tous cas merci beaucoup, c'est vraiement sympa.
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
18 janv. 2013 à 14:57
Bonjour balou11,

- Il faudrait écrire dans un fichier texte toutes les valeurs du tableau pour avoir la possibilité de vérifier si c'est une nouvelle donnée que l'utilisateur vient d'encoder ou si c'est une modification !!!
- Quand je dis fichier texte, cela peut être un tableau globale .. donc, à lire à l'ouverture du fichier et à tenir en mémoire jusqu'à la fermeture du classeur.
- Troisième et dernière possibilité que je vois est de copier le classeur pour ne vérifier que la cellule soeur .. ce classeur étant détruit à la fermeture du classeur de travail..

De toute façon, il faut connaître la quantité de valeurs à mémoriser ou à écrire !
Cette quantité de valeur à mémoriser peut être réduite au nombre de cellules contenues dans la colonne "C", puisque le calcul n'est à faire que par rapport à un cellule de cette colonne.
0