saisie date automatique

jhala

XLDnaute Nouveau
bonjour,
J'ai trouvé ce code qui permet, lorsqu'on saisit un nom d'utilisateur en colonne A, permet d'afficher automatiquement la date et l'heure de la saisie...
Cependant afin d'eviter de saisir à chaque fois les noms d'utilisateurs, j'ai crée une liste déroulante comportant l'ensemble des utilisateurs.
Et là ca coince, car la date et l'heure de la saisie ne s'affiche plus...
Pourriez vous m'aider car je n'y connais rien en VBA
D'avance merci... ci joint le code
Sub auto_open()
ActiveWorkbook.Worksheets("feuil1").OnEntry = "ecrit_date"
End Sub
Sub ecrit_date()
If ActiveCell.Column = 1 And ActiveCell.Offset(0, 1) = "" Then
ActiveCell.Offset(0, 1).Value = Now
End If
End Sub
 
C

Compte Supprimé 979

Guest
Re : saisie date automatique

Salut Jhala,

Tu peux supprimer ton code "auto_open()" ... biiiirrrkkk

Tu remplace par
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Call Ecrit_Date
End Sub
A mettre dans ThisWorkbook, biensur ;)

A+
 

jhala

XLDnaute Nouveau
Re : saisie date automatique

Merci pour ta réponse,
Malgré tout, cela ne fonctionne pas.
Mais comme je l'ai déjà dit, je n'y connais rien.

Donc voilà ce que j'ai fait:
- dans Virtual Basic editor -> fenêtre projets -> Modules -> Module 1, j'ai supprimé le code "auto open" ( de Sub à End Sub)
- il reste toujours le code Ecrit_date dans le module 1
- ensuite copié-collé du code que tu m'as donné dans la fenêtre projets -> Microsoft Excel Objets -> ThisWorkbook.
- puis Sauvegardé.

Quand je choisis un élément de ma liste de choix colonne A, les dates et heures ne s'affichent toujours pas colonne B.

Peux-tu me dire ce que j'ai mal fait ?
Merci d'avance.
Jhala
 

jhala

XLDnaute Nouveau
Re : saisie date automatique

Merci pour ton exemple mais sauf erreur de ma part, la date n'est pas saisie après avoir sélectionné un produit en colonne A.
Peux-tu vérifier de ton côté ?
Encore une fois, merci d'avance.

Jhala
 

Lii

XLDnaute Impliqué
Re : saisie date automatique

Salut,

Tu dois commettre une erreur de manipulation car la proposition de Bruno est fiable.
Autre exemple, clic bouton droit sur le nom de l'onglet puis Visualiser le code. Copie cette évènementielle :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Count > 1 Or Target.Row = 1 Then Exit Sub
  If Target.Column = 1 Then
    Target.Offset(, 1) = IIf(Target = "", "", Now)
  End If
End Sub
remarques : elle n'est opérationnelle que dans l'onglet choisi ; si une cellule "produit" est vidée, la cellule "date" l'est aussi. Pour garder quand même la date, remplace IIf(Target = "", "", Now) par Now.
 

jhala

XLDnaute Nouveau
Re : saisie date automatique

Merci BrunoM45,
Ton exemple fonctionne.
Du moins, sur le PC de mon boulot avec Excel 2002.
Sur mon Mac avec Excel 2004, ça ne fonctionne pas mais ce n'est pas grave car c'est sur PC que je vais l'utiliser.

Il ne me reste plus qu'à me renseigner un peu sur le VBA, histoire de ne pas mourir idiot.
Si vous connaissez des bouquins qui pourrait m'aider, je suis preneur.

Merci encore à tous
Jhala
 
C

Compte Supprimé 979

Guest
Re : saisie date automatique

Bonsoir à tous,

Comptant que vous enleviez le doute à Jhala, en ce qui concerne ma macro ;)

Mon cher Jhala, saches que je mets rarement sur le forum, des fichiers avec du code qui ne fonctionne pas :cool:

En revanche tu aurais pu le dire que tu avais un MAC :mad:

Et tu devrais le savoir, le VBA ne fonctionne pas correctement sur MAC
headbang.gif
 

Discussions similaires

Réponses
21
Affichages
1 K

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 976
dernier inscrit
kaizertv2001@gmailcom